文章詳情頁
java - 遇到Oracle數據庫分頁查詢的問題
瀏覽:116日期:2023-12-06 09:50:14
問題描述
是這樣的,我這個表中有KS_ZKZ這個字段,這個字段在表中并不是唯一的,每個學號都出現了多次,我現在想依據這個學號來進行分頁查詢:首先把學號去重,并升序排列:
SELECT DISTINCT(KS_ZKZ) from ZK.T_BYSQ_KS_KC ORDER BY KS_ZKZ ASC
有了這個查詢結果后,想查詢這個結果的從rownum 為a到b的數據:
SELECT KS_ZKZ,ROWNUM FROM(SELECT DISTINCT(KS_ZKZ) from ZK.T_BYSQ_KS_KC ORDER BY KS_ZKZ ASC)WHERE ROWNUM >=10 AND ROWNUM<=20
但是問題出現了:下面是查詢結果。。
為什么查不到呢?
問題解答
回答1:rownum只是一個偽列, 你里面那層需要查個rownum出來就行, 比如
SELECT KS_ZKZ FROM(SELECT DISTINCT(KS_ZKZ), ROWNUM rn from ZK.T_BYSQ_KS_KC ORDER BY KS_ZKZ ASC)WHERE rn between 10 AND 20 回答2:
rownum的判斷必須以1開始,比如=1,<5都是成立的,但是=2,>7都必須先將結果集查出來,通過子語句再查詢(rownum需要別名)
標簽:
java
相關文章:
1. SQLAlchemy 訪問Mysql數據庫彈出Warning,VARIABLE_VALUE,如何解決?2. mysql - 數據庫建字段,默認值空和empty string有什么區別 1103. shell - Update query wrong in MySQL4. 事務 - mysql共享鎖lock in share mode的實際使用場景5. sql語句 - 如何在mysql中批量添加用戶?6. 怎么php怎么通過數組顯示sql查詢結果呢,查詢結果有多條,如圖。7. mysql建表報錯,查手冊看不懂,求解?8. mysql - JAVA怎么實現一個DAO同時實現查詢兩個實體類的結果集9. mysql - PHP定時通知、按時發布怎么做?10. php - 數據庫表如果是null怎么替換為其他字段的值
排行榜
