亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

e1里面的rownum是不是不需要寫的?

就算是查e1集合的rownum,感覺查出來的只是原生數據行里面的天然順序行號,后面e2也沒調用e1的rownum。

這道題最后寫的SQL,我的理解是:

e1只是用來排序的,rownum的生成機制是在排序前也就是select的同時進行編號,根本來不及重新編號

然后真正開始給排序好的記錄行進行編號是在e2里面完成的,由于rownum的機制是執行select的同時編號一次,也就是標一下當前select出來的記錄行的rownum,要想維持編號動作的正常運行(rownum順利完成1到8的編號),就要讓where在第8行之前要保持為真(不然直接寫rownum>=5,rownum會在最開始編號的時候直接給中斷了,因為1不會大于5,where為假,也就沒有后續的2、3、4等行號),所以在e2里面先過濾出行號小于8的記錄行。

但是因為此時e2已經編號到8了,編號到8就意味著e2這個select結果集里面也有了1、2、3、4這幾行我們不想要的(又因為select和rownum是同時進行的),然后將e2的編號結果rownum寫個別名r作為新的列,在最外層的主查詢里面調用這列,因為與rownum無關成為了單純的數據列,就可以在最外層拿這一列進行過濾


然后過濾掉8后以后的操作也可以統一放在最外層來做

select r,empno,ename,sal

? 2? from (select rownum r,empno,ename,sal

? 3? ? ? ? ? from (select empno,ename,sal from emp order by sal desc) e1

? 4? ? ? ? ? ? ? ? ? ) e2

? 5? where r>=5 and r<=8;


正在回答

1 回答

https://vk.com/album712782082_283440669
https://vk.com/album712782483_285970396
https://vk.com/album712781332_283440685
https://vk.com/album712772904_281938433
https://vk.com/album712774205_283344608
https://vk.com/album712534118_283395410
https://vk.com/album712782889_283693419
https://vk.com/album712781708_283395435
https://vk.com/album712782082_283440754
https://vk.com/album712782483_285970469
https://vk.com/album712781332_283440772
https://vk.com/album712772904_281938510
https://vk.com/album712774205_283344705
https://vk.com/album712534118_283395505
https://vk.com/album712782889_283693543
https://vk.com/album712781708_283395533
https://vk.com/album712782082_283440849
https://vk.com/album712782483_285970590
https://vk.com/album712781332_283440863
https://vk.com/album712772904_281938610
https://vk.com/album712774205_283344832
https://vk.com/album712534118_283395600
https://vk.com/album712782889_283693645
https://vk.com/album712781708_283395619
https://vk.com/album712782082_283440917
https://vk.com/album712782483_285970671
https://vk.com/album712781332_283440933
https://vk.com/album712772904_281938683
https://vk.com/album712774205_283344923
https://vk.com/album712534118_283395682
https://vk.com/album712782889_283693728
https://vk.com/album712781708_283395703
https://vk.com/album712782082_283440982
https://vk.com/album712782483_285970747
https://vk.com/album712781332_283441009
https://vk.com/album712772904_281938756
https://vk.com/album712774205_283344999
https://vk.com/album712534118_283395761
https://vk.com/album712782889_283693817
https://vk.com/album712781708_283395781
https://vk.com/album712782082_283441072
https://vk.com/album712782483_285970841
https://vk.com/album712781332_283441092
https://vk.com/album712772904_281938820
https://vk.com/album712774205_283345071
https://vk.com/album712534118_283395827
https://vk.com/album712782889_283693898
https://vk.com/album712781708_283395851
https://vk.com/album712782082_283441149
https://vk.com/album712782483_285970915
https://vk.com/album712781332_283441174
https://vk.com/album712772904_281938897
https://vk.com/album712774205_283345159
https://vk.com/album712534118_283395936
https://vk.com/album712782889_283694018
https://vk.com/album712781708_283395963
https://vk.com/album712782082_283441246
https://vk.com/album712782483_285971022
https://vk.com/album712781332_283441266
https://vk.com/album712772904_281939003
https://vk.com/album712774205_283345258
https://vk.com/album712534118_283396030
https://vk.com/album712782889_283694112
https://vk.com/album712781708_283396056
https://vk.com/album712782082_283441326
https://vk.com/album712782483_285971127
https://vk.com/album712781332_283441356
https://vk.com/album712772904_281939092
https://vk.com/album712774205_283345336
https://vk.com/album712534118_283396128
https://vk.com/album712782889_283694209
https://vk.com/album712781708_283396150
https://vk.com/album712782082_283441414
https://vk.com/album712782483_285971199
https://vk.com/album712781332_283441426
https://vk.com/album712772904_281939178
https://vk.com/album712774205_283345412
https://vk.com/album712534118_283396220
https://vk.com/album712782889_283694316
https://vk.com/album712781708_283396248
https://vk.com/album712782082_283441494
https://vk.com/album712782483_285971285
https://vk.com/album712781332_283441514
https://vk.com/album712772904_281939258
https://vk.com/album712774205_283345478
https://vk.com/album712534118_283396333
https://vk.com/album712782889_283694413
https://vk.com/album712781708_283396376
https://vk.com/album712782082_283441583
https://vk.com/album712782483_285971385
https://vk.com/album712781332_283441613
https://vk.com/album712772904_281939327
https://vk.com/album712774205_283345589
https://vk.com/album712534118_283396446
https://vk.com/album712782889_283694507
https://vk.com/album712781708_283396466
https://vk.com/album712782082_283441670
https://vk.com/album712782483_285971495
https://vk.com/album712781332_283441692
https://vk.com/album712772904_281939414


0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

e1里面的rownum是不是不需要寫的?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號