我有一个包含大量字段的表,并且该表正在由INSERT INTO ... SELECT
查询填充。由于字段的数量如此之大,我得到如下信息:
INSERT INTO MyTable (
column1,
colunm2,
colunm3,
...
column200)
SELECT column1,
column2,
column3,
...
column200
FROM SomeView;
以上内容很麻烦且易于维护,因此我希望可以进行某种“自然插入”,其中SELECT
子句中的字段名称映射到目标表中具有相同名称的字段。
我试过这个:
INSERT INTO MyTable
SELECT column1,
column2,
column3,
...
column200
FROM SomeView;
哪个在语法上是正确的,但是依赖于匹配字段的顺序,这更容易出错,那该怎么办呢?我是否忽略了更明显的第三种选择?
澄清:目的是让代码更容易长期维护。我们将多次更新此声明,因此我正在寻找一种使其更具可读性和易于修改的方法。