-
分頁查詢,4條每頁,并顯示第二頁數據?
select rownum ,rr,fhiino,fspno,fprocseq?
?from (
?select rownum rr,fhiino,fspno,fprocseq
?from
?(
?select rownum,fhiino,fspno,fprocseq from ilapplym am where am.FAPPLYTM >to_date('2017-01-01','yyyy-mm-dd')
?order by am.FPROCSEQ desc
?)
? e1 where rownum <=8 ) e2
? where rr>5
查看全部 -
not in語句中不能有null值,否則返回空集,因為expr <> null永遠為假。
所以在處理 in 的子查詢的時候,要確保子查詢中返回的值沒有空值。
select * from emp where empno not in (select mgr from emp where mgr is not null);
查看全部 -
select empno,ename,sal,(select avg(sal) from emp where deptno = e.deptno) avgsal from emp e where sal > (select avg(sal) from emp where deptno = e.deptno);
相關子查詢:主表中的某個字段作為參數傳入到子查詢中
查看全部 -
利用樹的深度原理去實現層次查詢。
select empno,bname//查詢員工號和老板號 from emp?
connect by prior empno=mgr//員工號的上一層(老板號)=老板號?
?start with empno=2431;?
根節點還可以 start with mgh is null;(根節點的老板號為空)
查看全部 -
外鏈接:把對于連接條件不成立的記錄,仍然包含在結果中。
左外鏈接:當連接條件不成立的時候,等號左邊的表仍然包含
右外連接:當連接條件不成立的時候,等號右邊的表仍然包含
寫法和叫法相反
查看全部 -
group by 語句增強,工資總和相加可以用rollup來表示。
查看全部 -
between and,小值在前,大值在后?
等值連接:連接條件后為等號
?不等值連接:連接條件后不為等號
查看全部 -
笛卡爾集:emp*dept.列數相加,行數相乘
查看全部 -
groupby語句增強
?select deptno,job,sum(sal)
?from emp group by rollup(deptno,job);
group by rollup分組等價于 group by deptno +group by job+null group by null group by 語句的增強可用于做報表:
?break on deptno skip 2 //相同部門號只顯示一次,不同部門號間隔兩行
?set pagesize 30 //設置每一頁顯示30行
查看全部 -
nvl()把空值轉換成一個非空的值
查看全部 -
avg (表中列字段) ,
sum (表中列字段) ?from 表; ? --列出 表中字段的平均值,和
?max (表中的字段),
?min (表中的字段) from 表 ; --列出表中字段的 最大值 最小值
count(*) 輸出這個表中一共有的數據條數
?count(distinct 表中字段) f; ? 輸出表中不重復字段的個數 ?
distinct 用于去重查看全部 -
rownum 行號 偽列
查看全部 -
可以使用子查詢的位置:where,select,having,from
不可以使用子查詢的位置:group by
查看全部 -
層次查詢:在某些情況下可以替代自連接,避免笛卡爾全集,本質上是一個單表查詢。
添加level,start with ?,order by 1。
查看全部 -
自連接:通過別名,將同一張表視為多張表。
查看全部
舉報