首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > IBM DB2 >

db2 取三个最小值有关问题

2012-12-30 
db2 取三个最小值问题求助请问如何在db2里面取出排序完以后的三个最小值? 并且其中包含重复的。也就是并列

db2 取三个最小值问题求助
请问如何在db2里面取出排序完以后的三个最小值? 并且其中包含重复的。也就是并列的话要一并取出.

举个例子:

140, 110,100,100, 67, 10

需要输出 140, 110, 100, 100 

感激不尽!
[解决办法]
SELECT * FROM orders FETCH FIRST 100 ROWS ONLY
[解决办法]
假设字段ID
SELECT * FROM TT A1 INNER JOIN 
(select ID from (SELECT DISTINCT ID FROM TT) A fetch 3 rows only  ) B
ON A1.ID=B.ID
[解决办法]
select * 
from table1 a
where 3>(select count(*) from table1 where 值>a.值);
[解决办法]
方法有很多,也可以用rank排序函数,看看帮助吧,例如
select * from (select rank() over(order by id desc) r_id,a.* from tablename a) t where r_id<=3

热点排行