Как выбрать количество меток, где деталь одинакова?
Part | Label
------+-------
a | L1
a | L2
a | L3
b | L1
b | L2
Ожидаемые результаты:
Part | LabelCount
------+------------
a | 3
b | 2
Примечания. Все типы данных являются строками. Я пытался разделить, чтобы получить максимальный номер строки, но функция MAX в ROW_NUMBER () не отвечает, как я это делал, и он просто возвращал все строки, использую ли я MAX или нет.
;WITH RowNumCTE AS
(
SELECT
[PartName],
ROW_NUMBER() OVER (PARTITION BY [Part] ORDER BY [Label] ASC) AS rn
FROM
[PartTable]
)
SELECT DISTINCT
[Part],
MAX([rn]) AS [LabelCount]
FROM
RowNumCTE
GROUP BY
[Part], [rn]
Фактические результаты:
Part | LabelCount
------+------------
a | 1
a | 2
a | 3
b | 1
b | 2
Я просмотрел список похожих вопросов в StackOverflow, например на этот , но не понимаю, как применить ответы к этой ситуации.