想查询排名第3的人员名单
原数据表如下:
create table test( name varchar ( 12 ), myValue int ) insert into test select ' zhang ' , 80 union select ' wang ' , 98 union select ' li ' , 100 union select ' zhao ' , 92 union select ' chen ' , 82 union select ' qin ' , 60 union select ' zhou ' , 92查询第3名的人员名单
SELECT * FROM test a WHERE ( SELECT Count ( DISTINCT myvalue) FROM test WHERE myvalue >= a.myvalue) = 3结果
name myValue -- ---------- ----------- zhao 92 zhou 92 ( 2 行処理されました)
查询前3名的人员名单
SELECT * FROM test a WHERE ( SELECT Count ( DISTINCT myvalue) FROM test WHERE myvalue >= a.myvalue) <= 3结果
name myValue -- ---------- ----------- li 100 wang 98 zhao 92 zhou 92 ( 4 行処理されました)内容由http://community.csdn.net/Expert/topic/5346/5346530.xml?temp=.3626978整理而成。
谢谢luo2pei4321 (沛沛)
