У меня есть небольшая колонка, которая используется для представления времени. Я написал следующий код, чтобы получить результат в зависимости от того, что время:SQL GROUP BY alias
CASE
WHEN
CONVERT(varchar, t0.U_ORC_BE_ProdTime, 108) BETWEEN '07:00:00' AND '19:00:00' THEN '1'
ELSE '2'
END AS [Shift],
--If time is between 7am and 7pm then Shift 1, else Shift 2
Я хочу, чтобы вставить его в запрос у меня уже есть, а затем его также группа сдвига.
SELECT
T6.U_ORC_BE_StyleName AS [Style Name],
T0.[ItemCode],
STUFF(T0.[ItemCode], 1, 6, '') AS [Shortened ItemCode],
SUM(T0.[PlannedQty]) AS [Planned Qty],
SUM(T0.CmpltQty) AS [Actual Qty],
SUM(T0.CmpltQty) - SUM(T0.PlannedQty) AS [Qty Difference],
SUM(T5.U_ORC_BE_HECTOLITER * T0.CmpltQty) AS [Total Hectoliters],
CASE
WHEN [.......]
THEN
WHEN [.......]
THEN
END AS [Line],
T0.U_ORC_BE_ProdDate AS [Date Produced]
FROM [.......]
GROUP BY T6.U_ORC_BE_StyleName, T0.[ItemCode], T5.Code , T0.U_ORC_BE_ProdDate
Он продолжает выдавать ошибку, хотя я подозреваю, что это связано с попыткой группировать имя псевдонима.
«Каждое выражение GROUP BY должно содержать по крайней мере один столбец, который не является внешней ссылкой».
Какая ошибка возникает? –
Извините, я отредактировал вопрос, включив в него ошибку. – coblenski
Где находится 'T0.U_ORC_BE_ProdDate' в select, если вы его не выбрали, а затем удалить из' Group by' –