【发布时间】:2021-02-27 21:06:36
【问题描述】:
这是一个愚蠢的小问题。我有一个包含数百列的大表,所以我不想单独写出每个列名。问题是,table1 是源表,有 200 列,table2 是目标表,有 201 列,其中table2 的最后一列是一个额外的自动增量(主键)列。这个想法是我可以做到
insert into table2 select * from table1 where row = ##;
我希望所有数据都被复制并且自动增量列能够完成它的工作。但是我收到了这个讨厌的错误消息:
错误代码:1136。列计数与第 1 行的值计数不匹配
谁有一个简单的解决方案?
【问题讨论】:
-
我不想单独写出每个列名。必须优先于 WANT。
-
答案是只给一个NULL stackoverflow.com/questions/3493612/…
-
答案是只给一个NULL MySQL不允许
SELECT NULL, * FROM ..,只允许SELECT *, NULL FROM ..。如果“一个额外的自动增量(主键)列”是table2结构中的最后一列,那么这是一个解决方案。 -
@Akina 好的,我没有注意到。幸运的是,我正在使用
*, NULL处理此案例,并且它正在工作。