常用的oracle增删改查语句

--当你误删除一个表时你可以闪回

flashback table tmp_system to before drop

--当你想更新一个字段值的指定位数时,可以使用切割和拼接

update reshn.CODE_RES a
set a.code_name=874482||substr(a.code_name,7) //从第七个字符开始截取,截取部分是不变的,需要更新的值放前面用'||'拼接.
where a.code_id in(select b.code_id from tmp_WLH b) ;

--当你想替换表中某个字段值时,可以用replace

update reshn.spc_region a
set a.region_name=replace(a.region_name,'旧值','新值');

--当你想查询一堆可能实时变化的数据,你可以加并行语句,就不会报错了,注意这可不是注释/*.....*/

select /*+ parallel(a,4)(b,4)*/vw.region_name "区域"  from reshn.spc_region;

--当你想查询的数据比较大比较多时,建议使用临时表存储起来,而不是直接查询出来,你可以使用复制数据

create table tmp_bkolt tablespace  indx_sub as  //复制数据
select /*+ parallel(a,4)(b,4)*/vw.region_name "区域",
       b.eqp_no       "设备编码",
       b.eqp_name     "设备名称",
       a.port_no      "端口编码",
       a.port_name    "端口名称"
  from reshn.rme_port a...

--当你想排除一个表中的重复数据时,你可以使用group by...having

select a.*,rowid from TMP_BKPWR a where eqp_name in (
select eqp_name from TMP_BKPWR group by eqp_name having count(*)>1
);

--当你想查看你的查询语句是不是全表查询时,花费多少时间的情况下

你可以选中你的查询语句,按下F5键,就能看到了。




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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值