SQL Server: отображение первой строки сгруппированных записей - PullRequest
1 голос
/ 10 апреля 2009

Я пытаюсь написать запрос, который вывел бы что-то похожее на последнюю партию записей ниже. Конечно, это работает в службах Reporting Services и Crystal Reports, но просто добавьте его сюда, чтобы посмотреть, возможно ли это в SSMS / QA:

Table:
id name amount
-- ---- ------
 1 rob   23.00
 2 rob   34.00
 3 dan   45.00
 4 dan   56.00

select name, amount from t1 
Query resulting in:
name amount
---- ------
rob   23.00
rob   34.00
dan   45.00
dan   56.00

DESIRED result:
name amount
---- ------
rob   23.00
      34.00
dan   45.00
      56.00

Спасибо! * * 1004

1 Ответ

3 голосов
/ 10 апреля 2009

Попробуйте это:

SELECT CASE WHEN _rank = 1 THEN name ELSE '' END AS name, amount
FROM (
    SELECT name, amount,
        ROW_NUMBER() OVER (PARTITION BY name ORDER BY amount ASC) AS _rank
    FROM t1
) q
...