如主题中简要说明的那样,我需要通过选择现有值来创建一个表。 我想要实现的是让另一列具有自动递增值。
这是我已经尝试过的:
CREATE TEMPORARY TABLE temp_tb (
`row_id` bigint(20) NOT NULL AUTO_INCREMENT,
`stm_id` bigint(20) NOT NULL,
descr varchar(20) NOT NULL,
PRIMARY KEY (row_id)
);
然后选择:
INSERT INTO temp_tb (
select stm_id,descr from tb_export
)
我希望在插入时预填充 row_id 列,但我只是收到 sql 语法错误,告诉我列数与值数不匹配。
你知道这是否有可能实现吗?
谢谢
最佳答案
您应该提供要插入到 temp_tb 中的列的名称:
INSERT INTO temp_tb (stm_id, descr) (
select stm_id,descr from tb_export
)
关于mysql - 从 select 创建表,然后通过在 mysql 中添加自动增量列来更改表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4660381/