SQL code16:29:53 scott@TUNGKONG> SELECT a.*,rownum FROM (SELECT good_id, good_nm, prc FROM tb_ag001 ORDER BY prc) a;
GOOD_I GOOD_NM PRC ROWNUM
------ ------------------------------ ---------- ----------
133337 阳光宝贝防晒修复套SPF-30 0 1
133424 旋覆透白绣花毛巾X1 0 2
133428 左旋C新纪润白霜(7ml) 0 3
133430 左旋C美白保湿精乳 0 4
133528 美白晶澈爽肤水 0 5
133530 左旋C燕窝初雪调养面膜 0 6
133628 左旋C-燕窝初雪调养面膜8g*2 0 7
133728 化妆包1个 0 8
133828 BICATO活菌酵母修护晚霜5g 0 9
138068 蓝牙耳机*1128TF卡*1 0 10
138069 超速读卡器*1 0 11
138073 内置128兆TF卡天然水晶手链*1 0 12
138074 内置128兆TF卡水晶手链 0 13
已选择13行。
已用时间: 00: 00: 00.00
16:30:06 scott@TUNGKONG> SELECT * FROM (SELECT a.*, ROWNUM rn FROM (SELECT good_id, good_nm, prc FROM tb_ag001 ORDER BY prc) a) WHERE rn < 9;
GOOD_I GOOD_NM PRC RN
------ ------------------------------ ---------- ----------
133337 阳光宝贝防晒修复套SPF-30 0 1
133424 旋覆透白绣花毛巾X1 0 2
133428 左旋C新纪润白霜(7ml) 0 3
133430 左旋C美白保湿精乳 0 4
133528 美白晶澈爽肤水 0 5
133530 左旋C燕窝初雪调养面膜 0 6
133628 左旋C-燕窝初雪调养面膜8g*2 0 7
133728 化妆包1个 0 8
已选择8行。 -----------------这是正确的结果,因为后面的过滤条件用的是rn < 9。
已用时间: 00: 00: 00.01
16:30:21 scott@TUNGKONG> SELECT * FROM (SELECT good_id, good_nm, prc FROM tb_ag001 ORDER BY prc) WHERE ROWNUM < 9;
GOOD_I GOOD_NM PRC
------ ------------------------------ ----------
133337 阳光宝贝防晒修复套SPF-30 0
133424 旋覆透白绣花毛巾X1 0
133428 左旋C新纪润白霜(7ml) 0
133430 左旋C美白保湿精乳 0
133528 美白晶澈爽肤水 0
133530 左旋C燕窝初雪调养面膜 0
138074 内置128兆TF卡水晶手链 0
133728 化妆包1个 0
已选择8行。 --------这是错误的结果。区别在于133628和138074这两条记录。
已用时间: 00: 00: 00.01
16:30:46 scott@TUNGKONG> SELECT rownum,a.* from tb_ag001 a order by prc;
ROWNUM GOOD_I GOOD_NM PRC
---------- ------ ------------------------------ ----------
1 133337 阳光宝贝防晒修复套SPF-30 0
2 133424 旋覆透白绣花毛巾X1 0
3 133428 左旋C新纪润白霜(7ml) 0
4 133430 左旋C美白保湿精乳 0
5 133528 美白晶澈爽肤水 0
6 133530 左旋C燕窝初雪调养面膜 0
13 133628 左旋C-燕窝初雪调养面膜8g*2 0 --------------
8 133728 化妆包1个 0
9 133828 BICATO活菌酵母修护晚霜5g 0
10 138068 蓝牙耳机*1128TF卡*1 0
11 138069 超速读卡器*1 0
12 138073 内置128兆TF卡天然水晶手链*1 0
7 138074 内置128兆TF卡水晶手链 0 --------------
已选择13行。
已用时间: 00: 00: 00.03