最常用的有rownum和rowid
鎮(zhèn)康ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書未來市場(chǎng)廣闊!成為成都創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18982081108(備注:SSL證書合作)期待與您的合作!
ROWNUM偽列是Oracle首先進(jìn)行查詢獲取到結(jié)果集之后在加上去的一個(gè)偽列,這個(gè)偽列對(duì)符合條件的結(jié)果添加一個(gè)從1開始的序列號(hào)
ROWID是一種數(shù)據(jù)類型,它使用基于64為編碼的18個(gè)字符來唯一標(biāo)識(shí)一條記錄物理位置的一個(gè)ID,類似于Java中一個(gè)對(duì)象的哈希碼,都是為了唯一標(biāo)識(shí)對(duì)應(yīng)對(duì)象的物理位置,需要注意的是ROWID雖然可以在表中進(jìn)行查詢,但是其值并未存儲(chǔ)在表中,所以不支持增刪改操作
比如,oracle常用分頁方法:SELECT * FROM (SELECT ROWNUM nums,emp.* FROM emp) WHERE nums 5 AND nums = 10;
select *
from (select tab.*, rownum as rk from tab order by 單價(jià) desc) t
where rk between 6 and 10
Oracle基礎(chǔ)知識(shí):偽列rownum,偽列就像表中的列一樣,但是在表中并不存儲(chǔ)。偽列只能查詢,不能進(jìn)行增刪改操作。
在查詢的結(jié)果集中,ROWNUM為結(jié)果集中每一行標(biāo)識(shí)一個(gè)行號(hào),第一行返回1,第二行返回2,以此類推。通過ROWNUM偽列可以限制查詢結(jié)果集中返回的行數(shù)。ROWNUM與ROWID不同,ROWID是插入記錄時(shí)生成,ROWNUM是查詢數(shù)據(jù)時(shí)生成。ROWID標(biāo)識(shí)的是行的物理地址。ROWNUM標(biāo)識(shí)的是查詢結(jié)果中的行的次序。