ORACLE语法中的INSERT INTO。。。SELECT。。。

今天写INSERT语句,想直接把一表里的数据取出直接插进另外一表。结果语法忘记了。找了半天。真是白痴啊自己,先把找到的语法记录下来吧。。。
set feedback off;
set pagesize 0;

create table foo (a number, b varchar(10), c varchar(10));

insert into foo values ( 15, 'abc','def' );
insert into foo values (998, 'max','min' );
insert into foo values (  7, 'bla','bla' );
insert into foo values (632, 'now','then');

insert into foo
  (a,b,c)
  (select                   AA,
                            BB,
                            CC
  from
    (select max(a) +1       AA      from foo),
    (select 'new'           BB,
            'old'           CC      from dual));

select * from foo where a = (select max(a) from foo);

drop table foo;

 

///下面是自己写的。。。RQ字段因为要使用INDEX,所以用BETWEEN
insert into mhmis.t_cxlc_info
  (LAST_TRANS_DATE, rq, ch, xc, dwdm)
  ((select sysdate, a.rq, a.ch, a.xc, a.dwdm
     from tdb.t_cxlc_info a
    where not exists (select rq, ch, xc, dwdm
             from mhmis.t_cxlc_info
            where dwdm = a.dwdm
              and xc = a.xc
              and ch = a.ch
              and rq = a.rq)
      and (a.rq between to_date('2003-09-22', 'yyyy-mm-dd') and
          to_date('2004-09-23', 'yyyy-mm-dd'))
      and a.ch in (select b.ch from db_ps_train b)));

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值