索引会提高查询效率,但是会降低增删改效率,truncat会将表的索引先删除掉,所以效率比较高
delete可以回滚,truncate不能回滚
创建sequence时,如果使用缓存,可能出现断层,(先从文件取出来值放在内存中,取出来没用重启后,按照文件中的值接着增长)
日期变换时,注意yyyy-mm--dd不区分大小写//日期转换函数较为常用
null值和数字相加时,还是为null,nvl()空值函数
count(1)相当于count(主键)
聚合函数常和分组一起
不能使用别名做条件(顺序问题先from --> where -->...-->字段)
oracle专用外链接
select *
from EMP e,DEPT de where e.DEPTNO(+) = de.DEPTNO;
一个实例:
select DEPTNO,min(SAL)
from EMP
group by DEPTNO;//oracle和mysql区别??
因为没有limit关键字,所以只能子查询,rownum
作为子表字段时,外面想用时起别名,不能出现表名.rownum形式
排序会打乱rownum顺序
两层子查询原因:
第一层:查出来rownum可能会乱
第二层:不能出现rownum > 一个正整数//原因:每查一条数据时,经过where条件时,不满足,下一条数据的rownum还是1,永远不满足