1. truncate table 表A:平时我们都是用的delete来删除表数据,其实并没有删除干净,因为还有表空间及磁盘保留的数据,很占内存,也是为什么你查数据越来越慢的原因之一,所以用 truncate table 能够干净的删除。
2.decode性能比case when 要高些
decode(bill_state,0,'暂存',1,'保存',2,'审批中',3,'审批通过',4,'驳回','已关闭') bill_state,
3.可直接编译成中文:查询结果是星期四
select * from to_char(to_data('2017-10-21',yyyy-mm-dd)) from dual
4.union 查询结果进行拼接(除重),union all效率比union要高
5.尽量少用in,因为in会进行全表扫描效率低
6.查询去重select distinct,name from tableA
7.instr(a,b) a中是否包含了b
NVL(a,b)a为空的时候为b,否则a
8.nvl(e.EMPSTATUS,'xx')<> 'leave'//能够查出满足条件及为空的数据:
e.EMPSTATUS:字段;'xx':自定义;'leave':需要查询的条件