表A(i,j,k),表B(i,j),怎样往A中(B.i,B.j,2),如果B中没有行插入(NULL,NULL,1)? insert into A(i,j,k) SELECT i,j,1 from B WHERE ... union allSELECT null,null,1 from B WHERE ... 【反条件】 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 insert into A(i,j,k) select max(i),max(j),1 from b where .....这样一定会返回一条记录的。 TO :shuipipi(水皮皮) 首先感谢你提供了在Insert的select子句中使用union 的思路 我试过你的方法,当B中没有任何行时,不会插入; 当B中m条有满足条件的记录 时,如果还存在n行满足【反条件】的记录时,会插入m+n行 即使将union all 改为union 也是这样 To iwantsay(吵闹): 我的实际问题就是单条新增,主要是为了用一些常数和另一个表的字段(如果存在)初始化一条记录,无论如何,这些常数必须插入到新的记录中去。 你给的方法是正确的,非常感谢 条件是rownum=1,如果第二个表没有记录用union就对了,但是如果有,则会插入2条记录 另外,在请教一个问题,insert into A(i,j,k) select C_SEQ.NEXTVAL,max(j),1 FROM B where B.rownum=1returning a.i into v_i;这个语句出现问题 PL/SQL: ORA-00933: SQL 命令行未正确结束如果不用select 而使用 insert ... values ... returning ... into 的形式就正确,这是怎么回事 你试一下用 max(a.i)吧。上面用了max(j)无法再得到a.i了。 好,结贴,再次感谢iwantsay(吵闹) 与 shuipipi(水皮皮) 关于BI工具选型的几点困惑?望各位指点。 sql语句 写不来啊 高手帮忙 急急急!!!!!!!!!!! 复合查询问题(多个字段复合) job运行不起来,什么原因 请教怎么把两列数据合并成一列数据 我怎么知道是哪个用户登陆到数据库进行的修改? number字段为何查不出来 如何使用户在pl/sql中用户新建一个过程或表等时,弹出一输入框输入一些信息? 数据库怎么启动不了啊? kettle IO错误 connetion reset怎么破,求教,急。 问一sql语句。 十万火急:oracle forms 安装以后如何配置?
首先感谢你提供了在Insert的select子句中使用union 的思路 我试过你的方法,当B中没有任何行时,不会插入;
当B中m条有满足条件的记录 时,如果还存在n行满足【反条件】的记录时,会插入m+n行
即使将union all 改为union 也是这样
你给的方法是正确的,非常感谢 条件是rownum=1,如果第二个表没有记录用union就对了,但是如果有,则会插入2条记录
insert into A(i,j,k)
select C_SEQ.NEXTVAL,max(j),1
FROM B where B.rownum=1
returning a.i into v_i;这个语句出现问题 PL/SQL: ORA-00933: SQL 命令行未正确结束
如果不用select 而使用 insert ... values ... returning ... into
的形式就正确,这是怎么回事