现在将表A的数据查出插入到表B中,如果两个表的字段相同,直接Insert Into B Select * From A就可以了,但是如果字段稍微有差异,像现在这种情况,请问如何在Insert和Select的时候不写字段名将A的数据写到B中,谢谢各位
3 个解决方案
#1
这种情况必须得写字段名。
当然如果表B中多出的3个字段全部在末尾或开头,可以如下变通下:
这相当于给3个多出的字段设置了默认值。
当然如果表B中多出的3个字段全部在末尾或开头,可以如下变通下:
insert into b
select a.*,1,1,1 from a;
这相当于给3个多出的字段设置了默认值。
#2
把select * 改成你需要的字段名称,在A中没有的字段,在对应的位置加上常数,如‘’,0等。这样可以吧
#3
非常感谢,经过证明这是可以的
#1
这种情况必须得写字段名。
当然如果表B中多出的3个字段全部在末尾或开头,可以如下变通下:
这相当于给3个多出的字段设置了默认值。
当然如果表B中多出的3个字段全部在末尾或开头,可以如下变通下:
insert into b
select a.*,1,1,1 from a;
这相当于给3个多出的字段设置了默认值。
#2
把select * 改成你需要的字段名称,在A中没有的字段,在对应的位置加上常数,如‘’,0等。这样可以吧
#3
非常感谢,经过证明这是可以的