几个常用的oracle sql语句

1.两个表的字段都比较多,但字段都一样,如何从一个表中将一条记录复制到另外一条记录??

  insert into A(A.col1,A.col2,A.col3...) select(B.col1,B.col2,B.col3...) from B where B.id=?


2.A表和B表字段相同,用B表来更新A表,如果某个字段在B表中不为空,则用B表的值覆盖A表中的此字段,反之则用A表中的原值。

   update A a set a.col1= nvl((select col1 from B),a.col1),
 
                  a.col2= nvl((select col1 from B),a.col2)

   where a.id=? and a.id=(select id from B);     //注:id 在A和B中均为主键


3.向表中插入一条数据,其中某一列为当前的系统时间:

  insert into tablename (col1,col2) vlaues('',sysdate);

 向表中插入一条数据,其中某一列为当前的客户端时间:
 java.util.Date date = new java.util.Date();
 long l = date.getTime();
 java.sql.Date dateSQL = new java.sql.Date(l);
 PreparedStatement   pre=conn.prepareStatement("insert into tablename (colum1,colum2,date) value('xx','yy',?)   ",ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
 pre.setDate(1,dateSQL);

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值