如何从数据库中选择3种热门销售产品?



我需要从数据库中选择3个最受欢迎的产品,但我不知道如何选择它。我使用 max(col_name(,这只给了我一个最受欢迎的项目。这不符合我的目标。我需要第一个最受欢迎的追随者与第二流行和第三受欢迎的产品。

如何在sql server 2012中选择它?

如果你想考虑处理第一、第二和第三名的领带,那么你可以在这里使用DENSE_RANK

SELECT *
FROM
(
SELECT *, DENSE_RANK() OVER (ORDER BY col_name DESC) dr
FROM yourTable
WHERE Boolean = 'False' AND Remark = 'Outstock'
) t
WHERE dr <= 3;

您可以按降序对数据进行排序,并使用此查询选择前 3 个项目:

SELECT TOP 3 *
FROM table_name
ORDER BY col_name DESC

最新更新