У меня есть SQL-запрос, подобный этому:
SET @q =
(SELECT Id AS '@Id', COUNT(Occ) AS '@Occ' FROM Details
GROUP BY Id
ORDER BY COUNT(Occ) DESC, Id ASC
FOR XML PATH('Data'), ROOT('Stats'), ELEMENTS, TYPE)
Я устанавливаю AS @Id и AS @Occ, чтобы моя директива FOR XML преобразовывала выходные данные как атрибуты, а не элементы.
Мой вопрос: двойное вхождение COUNT (Occ) как в SELECT, так и в ORDER BY приводит к тому, что счет выполняется дважды, и если да, как я могу предотвратить это?
Спасибо!