问候所有。我有一个SQL 2008 Express数据库,让名字是tbl_Merchant,类似如下:SQL每月销售前10名
Merchant | Sales | Month
Comp.1 100 1
Comp.2 230 1
Comp.3 120 1
Comp.1 200 2
Comp.2 130 2
Comp.3 240 2
Comp.1 250 3
. . .
. . .
. . .
我每个月需要找到前10的商家销售额超过12个月。
如果只是一个月,这很容易。
SELECT TOP 10
Merchant,
Sales,
Month
FROM tbl_Merchant
WHERE Month = 1
ORDER BY Sales DESC
但是如果我想在12个月内找到它们,我就会陷入困境。我需要显示120个商家,这是每个月的前10名销售商。目前我的解决方案是将12月份的12个表格合并在一起,但我认为这不是一个好方法。
任何人都可以给我任何建议吗?
非常感谢。
您正在使用哪种SQL(MySQL,Oracle,PostgreSQL,SQLServer等)? – 2012-01-10 09:44:01
@MarkBannister:'TOP 10'表示SQL Server或Sybase(都是'T-SQL') – 2012-01-10 10:02:12
我正在使用MS SQL。 – DragonZelda 2012-01-11 02:49:42