关闭。这个问题需要更加突出重点。它目前不接受答案。**想改进这个问题吗?**通过编辑这篇文章更新这个问题,使它只关注一个问题。
9个月前关门了。改进这个问题如何从sql server中的表中选择第三高的值(或表中的任何值)
js81xvg61#
在sql server中,如果需要第三高的非重复值,可以使用:
select p.* from (select p.*, dense_rank() over (order by listprice desc) as seqnum from products p ) p where seqnum = 3;
如果您只是想要按价格订购时排在第三位的行:
select p.* from products p order b listprice desc offset 2 fetch first 1 row only;
6l7fqoea2#
SELECT TOP 1 with TIES prod.product_name, prod.list_price FROM( SELECT product_name , list_price FROM production.products ORDER BY list_price DESC Offset 2 ROWS **Fetch First 4 Rows Only** ) as prod Order BY list_price desc
此查询从表中获取所有价值第三高的产品(如果有许多产品具有相同的价格/价值)。在这里,您可以替换/更新偏移值以从表中获取第二、第三、第四等值。此外,您还可以添加fetch first(row count)行来限制所需的位置值。
2条答案
按热度按时间js81xvg61#
在sql server中,如果需要第三高的非重复值,可以使用:
如果您只是想要按价格订购时排在第三位的行:
6l7fqoea2#
此查询从表中获取所有价值第三高的产品(如果有许多产品具有相同的价格/价值)。在这里,您可以替换/更新偏移值以从表中获取第二、第三、第四等值。此外,您还可以添加fetch first(row count)行来限制所需的位置值。