为什么向一个表中插入数据要分别使用多个insert into select 插入呢,这样不会插入多行数据吗
就像这个sqlinsertintoa(1,2,3,4)selectaa,0,0,bbfromb;insertintoa(1,2,3,4)select0,cc,dd,0fr...
就像这个sql
insert into a (1,2,3,4) select aa,0,0,bb from b ;
insert into a (1,2,3,4) select 0,cc,dd,0 from c;
比如第一次插入100条数据是这样的 aa,0,0,bb 那么第二次插入应该是再插入100条数据是这样的0,cc,dd,0 ,总共会有200条数据。 但是结果却是100条aa,cc,dd,bb 这是为什么呢。 展开
insert into a (1,2,3,4) select aa,0,0,bb from b ;
insert into a (1,2,3,4) select 0,cc,dd,0 from c;
比如第一次插入100条数据是这样的 aa,0,0,bb 那么第二次插入应该是再插入100条数据是这样的0,cc,dd,0 ,总共会有200条数据。 但是结果却是100条aa,cc,dd,bb 这是为什么呢。 展开
1个回答
2013-06-08
展开全部
这个问题其实是这样的 你插入的数据就是200条 但是aa,bb跟cc,dd是错开的(就是上面的一百条是 aa,0,0,bb ;下面的一百条是0,cc,dd,0)这应该是个临时变,当你把临时表的数据插入到实事表的时候你就的使用sum()函数,这时候两百条数据就会对应的加起来。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询