select 查询到两个字段的数据insert,其他字段需要手写怎么实现?
问题描述:
INSERT INTO 表1 (字段1,字段2,字段3,字段4) VALUES((select 字段1,字段2 from 表2 ),'字段3','字段4')
字段3,字段4是手写的,但是报错:Column count doesn't match value count at row 1
INSERT INTO 表1 (字段1,字段2,字段3,字段4)select 字段1,字段2,'111' as 字段3 ,'222' as 字段4 from 表2
也会报错:Truncated incorrect INTEGER value
咋办啊,5555555!
答
第二种是数据类型不正确,你核对一下字段的顺序看是不是没把对应的字段匹配上。
答
INSERT INTO 表1 (字段1,字段2,字段3,字段4)select 字段1,字段2, '字段3','字段4' from 表2
insert into M(A,B,C,D) select A,B,'c','d' from N
Insert into Table2(a, c, d) select a,c,5 from Table1
参考
INSERT INTO SELECT语句
语句形式为:Insert into Table2(field1,field2,…) select value1,value2,… from Table1
或者:Insert into Table2 select * from Table1