怎么用sql语句向一个表里面成批复制数据

yak 发布于 2013/11/18 10:36
阅读 232
收藏 1
比如原来已经有10w行,执行一个sql,数据变成20w  再执行一个,变成40w 不是拼sql insert的那种
加载中
0
MZHS
MZHS

INSERT INTO test (SELECT * FROM test);

表为test

0
yak
yak

引用来自“MZHS”的答案

INSERT INTO test (SELECT * FROM test);

表为test

这样会提示id重复 ERROR 1062 (23000): Duplicate entry '1' for key 'PRIMARY'
0
yak
yak
insert into article (select subject,content from article); select里不选id提示  ERROR 1136 (21S01): Column count doesn't match value count at row 1
Tuesday
Tuesday
好吧, 你基础太过关了...
0
MZHS
MZHS

引用来自“yak”的答案

insert into article (select subject,content from article); select里不选id提示  ERROR 1136 (21S01): Column count doesn't match value count at row 1
如果是带ID自增长的话,那就只有将数据库的内容单表导出为SQL,然后再批量插入了
MZHS
MZHS
导出的时候,不要导出id,用SQLyog可以办到
0
Tuesday
Tuesday

insert into article (select subject,content from article);
-----------------------------------------------------------------------

你既然知道查询带字段, 为什么不考虑插入时也要指定字段呢?

insert into article (subject,content) (select subject,content from article);


0
MZHS
MZHS

引用来自“Tuesday”的答案

insert into article (select subject,content from article);
-----------------------------------------------------------------------

你既然知道查询带字段, 为什么不考虑插入时也要指定字段呢?

insert into article (subject,content) (select subject,content from article);


正解,不过值得注意的是,不要在指定字段后加 values 关键字会报语法错误的.
返回顶部
顶部