SELECT StoreName, Charges, Payments, Adjustments, AccountsReceivable FROM ( SELECT *, ROW_NUMBER() OVER(PARTITION BY StoreName ORDER BY Charges DESC) AS row_num FROM dbo.your_table_name ) AS query1 WHERE row_num <= 20 /*CORRECTION from earlier code, which had row_num = 1*/ ORDER BY StoreName, Charges DESC
Queennie L
ASKER
@Scott,
Thank you for your help.
Your query is perfectly correct but I asked the wrong question.
Is there a way I can reverse if Top 20 by Store Name on Charges?
Show only top 20 Store Name. I know my example has only 4 store name.
FROM (
SELECT *, ROW_NUMBER() OVER(PARTITION BY StoreName ORDER BY Charges DESC) AS row_num
FROM dbo.your_table_name
) AS query1
WHERE row_num <= 20 /*CORRECTION from earlier code, which had row_num = 1*/
ORDER BY StoreName, Charges DESC