----------
1
2
3
有点麻烦,不过也只能这样.
相同道理, 如果想从表中取出按照某字段排序前M到N条记录
下面的ORACLE语句是最好的:
SQL> select ID from
(
select ID , rownum as con from
select ID from TestSort order by ID
)
where rownum <= 3 /*N值*/
where con >= 2; /*M 值*/
ID
MS SQLSERVER中也可以用类似的思路解决此类问题.
当然你也可以用笨一点的办法, 比如用前N条记录的集合MINUS前M-1条记录的集合得到
前M到N条记录集合. (有点象饶口令) , 不过MS SQLSERVER好象不支持MINUS之类的集合操作.
看来小小的一个排序取值问题还真不是那么简单呢 !
Black_Snail
Ligang1000@hotmail.com
欢迎交流,转贴请保留以上信息
上一页 [1] [2]
Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved. 闵涛 E_mail:admin@mintao.net(欢迎提供学习资源)
鄂公网安备 42011102001154号
站长:MinTao ICP备案号:鄂ICP备11006601号-18