Я мог бы воспользоваться некоторой помощью. У меня есть запрос, который подсчитывает количество кодов ошибок с помощью оператора Case и Like с предложением Where в дате. Затем я объединяю его со вторичным запросом. Только разница - это дата. Он работает, но возвращает значения вКоличество запросов SQL Union для разных столбцов
Fault Code Count
20k 71
60k 167
20k 86
60k 178
Он возвращает вторичный счет под колонкой «Граф». Однако я хочу добавить еще один столбец. Пример:
Fault Code CountA CountB
20k 71 86
60k 167 178
Любые предложения? Создать временную таблицу?
Вот мой код.
SELECT
CASE
WHEN FaultCode LIKE '60%' THEN '60k'
WHEN FaultCode LIKE '20%' THEN '20k'
END AS FaultCode
, COUNT(FaultCode) AS Day1
FROM RmaSummary
Where CreationTime > '2016-03-30' AND CreationTIme < '2016-03-31' AND
ClosedTime Is null AND (FaultCode LIKE '60%' OR FaultCode LIKE '20%')
AND FaultCode <> '20000' AND FaultCode <> '60052' AND FaultCode <> '0'
GROUP BY
CASE
WHEN FaultCode LIKE '60%' THEN '60k'
WHEN FaultCode LIKE '20%' THEN '20k'
END
Union All
SELECT
CASE
WHEN FaultCode LIKE '60%' THEN '60k'
WHEN FaultCode LIKE '20%' THEN '20k'
END AS FaultCode
, COUNT(FaultCode) AS Day2
FROM RmaSummary
Where CreationTime > '2016-03-31' AND CreationTIme < '2016-04-01' AND
ClosedTime Is null AND (FaultCode LIKE '60%' OR FaultCode LIKE '20%')
AND FaultCode <> '20000' AND FaultCode <> '60052' AND FaultCode <> '0'
GROUP BY
CASE
WHEN FaultCode LIKE '60%' THEN '60k'
WHEN FaultCode LIKE '20%' THEN '20k'
END
Используйте PIVOT, чтобы сделать это – Squirrel