Sql server 2012 如何从数据库中选择3种畅销产品?

Sql server 2012 如何从数据库中选择3种畅销产品?,sql-server-2012,Sql Server 2012,我需要从数据库中选择3个最流行的产品,但我不知道如何选择它。我使用maxcol_名称,这只给了我一个最受欢迎的项目。那不符合我的目标。我需要第一个最受欢迎的,其次是第二个最受欢迎的和第三个最受欢迎的产品 如何在sql server 2012中选择它?您可以按降序对数据排序,并使用此查询选择前三项: SELECT TOP 3 * FROM table_name ORDER BY col_name DESC 您可以按降序排列数据,并使用此查询选择前3项: SELECT TOP 3 * FROM t

我需要从数据库中选择3个最流行的产品,但我不知道如何选择它。我使用maxcol_名称,这只给了我一个最受欢迎的项目。那不符合我的目标。我需要第一个最受欢迎的,其次是第二个最受欢迎的和第三个最受欢迎的产品


如何在sql server 2012中选择它?

您可以按降序对数据排序,并使用此查询选择前三项:

SELECT TOP 3 *
FROM table_name
ORDER BY col_name DESC

您可以按降序排列数据,并使用此查询选择前3项:

SELECT TOP 3 *
FROM table_name
ORDER BY col_name DESC

如果你想考虑处理第一、第二和第三的关系,那么你可以在这里使用DeNeSyRead:


如果你想考虑处理第一、第二和第三的关系,那么你可以在这里使用DeNeSyRead:



此语句似乎为空,因为我有条件where。如果我使用非条件,则此语句是正确的。@Sai:在ORDER BY行之前添加where条件。在我的示例中,在表名和orderby之间。我得到了它。感谢您的帮助此语句看起来是空的,因为我有条件where。如果我使用非条件,则此语句是正确的。@Sai:在ORDER BY行之前添加where条件。在我的示例中,在表名和orderby之间。我得到了它。感谢您的帮助SELECT*FROM SELECT*,DENSE\u RANK OVER ORDER BY CarID DESC dr FROM tb\u cardetail t其中Boolean='Fasle'和Remark='Outstock'以及dr this one SELECT returnempty@Sai因为你的查询是错误的,如果我知道你也有WHERE子句,我就不会发布。请参阅我的更新答案。再次与朋友联系。通过此代码,从SELECT*中选择*,按列名顺序排列,从yourTable中描述dr,其中布尔值为'False',备注为'Outstock't,其中dr@Sai您应该打开一个新问题,并且您应该接受此处给出的两个答案之一。从SELECT*中选择*,根据tb\U CardDetail t中的CarID DESC dr对订单进行密集排序,其中布尔值='Fasle'和备注='Outstock',dr选择返回empty@Sai因为你的查询是错误的,如果我知道你也有WHERE子句,我就不会发布。请参阅我的更新答案。再次与朋友联系。通过这段代码,从SELECT*中选择*,按照列名顺序排列,从yourTable中描述dr,其中布尔值为'False',备注为'Outstock',而dr@Sai您应该打开一个新问题,你应该接受这里给出的两个答案中的一个。我明白了,谢谢你的帮助。我明白了,谢谢你的帮助。