Oracle【tips2】

1,不可以在group by后面使用子查询
2,一般不在子查询排序;但top-n分析问题中,必须对子查询排序
3, 一般先执行子查询,再执行主查询;但相关子查询例外
4,SQL 优化 4.尽量使用多表查询
5,delete和truncate的区别:

1. delete逐条删除;truncate先摧毁表 再重建
2. (*)delete是DML(可以回滚) truncate是DDL(不可以回滚)
3. delete不会释放空间 truncate会
4. delete可以闪回(flashback)  truncate不可以
5. delete会产生碎片 truncate不会

6,海量插入数据

数据泵(PLSQL程序:dbms_datapump)
SQL*Loader工具
外部表
  

7,rownum永远按照默认的顺序生成
8,rownum只能使用< <=;不能使用> >=
9,rownum永远从1开始
10,临时表:

SQL> 1. 手动: create global temporary table *****
SQL> 2. 自动:排序
SQL> 特点:当事务或者会话结束的时候,表中自动删除

11,--相关子查询:将主查询中的值 作为参数传递给子查询
12,--行转列:wm_concat(varchar2) 组函数
13, --oracle 10g:6种不同闪回 oracle11g:7种
14,--注意:管理员没有回收站
15,SQL优化 5.尽量使用union all
16,SQL 原则6. 尽量不要使用集合运算

你可能感兴趣的:(Oracle【tips2】)