java - 遇到Oracle數(shù)據(jù)庫(kù)分頁(yè)查詢的問題
問題描述
是這樣的,我這個(gè)表中有KS_ZKZ這個(gè)字段,這個(gè)字段在表中并不是唯一的,每個(gè)學(xué)號(hào)都出現(xiàn)了多次,我現(xiàn)在想依據(jù)這個(gè)學(xué)號(hào)來進(jìn)行分頁(yè)查詢:首先把學(xué)號(hào)去重,并升序排列:
SELECT DISTINCT(KS_ZKZ) from ZK.T_BYSQ_KS_KC ORDER BY KS_ZKZ ASC
有了這個(gè)查詢結(jié)果后,想查詢這個(gè)結(jié)果的從rownum 為a到b的數(shù)據(jù):
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
但是問題出現(xiàn)了:下面是查詢結(jié)果。。
為什么查不到呢?
問題解答
回答1:rownum只是一個(gè)偽列, 你里面那層需要查個(gè)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都必須先將結(jié)果集查出來,通過子語(yǔ)句再查詢(rownum需要?jiǎng)e名)
相關(guān)文章:
1. python 字符串匹配問題2. mysql - .sql格式的表結(jié)構(gòu)文件用navicat怎么導(dǎo)入?3. mysql分庫(kù)分表量級(jí)疑問4. php - TP5的登錄驗(yàn)證問題5. 請(qǐng)問朱老師,如何配置url訪問路由6. mysql 5萬(wàn)張表 導(dǎo)出成sql 不要內(nèi)容,只要結(jié)構(gòu),非常慢。如何解決啊?7. 為啥獲取不到呀?8. php怎么用isMobile()函數(shù)識(shí)別pc端移動(dòng)端自動(dòng)跳轉(zhuǎn)9. 輸入地址報(bào)以下截圖錯(cuò)誤,怎么辦?10. node.js - nodejs開發(fā)中常用的連接mysql的庫(kù)
