Я хотел бы объединить разные операторы Count в одном запросе, чтобы в итоге запрос просто возвращал одно число (общее количество) для каждого счета.SQL Server: как объединить разные подсчеты в одном запросе
Следующие запросы работают отдельно, но я не смог найти способ их комбинирования, не повторяя один и тот же результат (вложенные таблицы) и не теряя отдельных имен для каждого из них («Союз все»).
Может ли кто-нибудь сказать мне, как я могу это достичь?
My SQL (только в сочетании для облегчения зрения здесь):
(
SELECT COUNT(*) OVER() AS countB
FROM MOC_Log2 B
WHERE B.modBy = @modBy
AND B.lastUpdate = 'Added'
FOR XML PATH(''), ELEMENTS, TYPE
),
(
SELECT COALESCE(SUM(D.vote), '0') AS countC
FROM MOC_Log3 C
LEFT JOIN MOC_Log3_Votes D
ON D.itemID = C.itemID
WHERE C.modBy = @modBy
AND C.lastUpdate = 'Added'
FOR XML PATH(''), ELEMENTS, TYPE
),
(
SELECT COALESCE(SUM(F.vote), '0') AS countE
FROM MOC_Log4 E
LEFT JOIN MOC_Log4_Votes F
ON F.itemID = E.itemID
WHERE E.modBy = @modBy
AND E.lastUpdate = 'Added'
FOR XML PATH(''), ELEMENTS, TYPE
)
Большое спасибо за любую помощь в этом, Тим.
Это отлично работает - большое спасибо за интересное обходное решение! :) – user2571510