日期:2014-05-16  浏览次数:20850 次

批量插入的多个select怎么写
一般情况下是insert into 表1 select ....

现在 在一张表上 同一字段有不同的逻辑操作,一个select解决不了问题了


insert into 表1 (X,Y)
select A from表2 WHERE ...
select A from表2 WHERE....

怎么把他们拼接起来呢????

------解决方案--------------------
insert into 表1 (X,Y)
select A from表2 WHERE ... union all
select A from表2 WHERE....

------解决方案--------------------
把两个select union all一下
------解决方案--------------------
探讨
一般情况下是insert into 表1 select ....

现在 在一张表上 同一字段有不同的逻辑操作,一个select解决不了问题了


insert into 表1 (X,Y)
select A from表2 WHERE ...
select A from表2 WHERE....

怎么把他们拼接起来呢????

------解决方案--------------------
楼上的逻辑,是想做笛卡尔积?
还是用 union all 保险些。
另外,用 decode 也是一种方法,具体还是要看业务需求了。