У меня следующий запрос, и мне нужно объединить два столбца Total_here и Total_there на основе hour_interval.Мне удалось выполнить два запроса с помощью UNION, но в основном это создает две строки для каждого часа (одна строка для «Всего нового» и одна строка для «Total_done»).У меня возникают проблемы, когда я пытаюсь преобразовать эти две строки в два столбца.
SELECT
hour_interval as hours
FROM
SELECT
DATEPART(hour, person) as hour_interval,
COUNT(person) AS Total_person
FROM
(SELECT
CASE
WHEN DATEPART(hour, x.person) > 12
THEN DATEADD (MINUTE, -1 * DATEPART(minute, x.person) - 1, x.person)
WHEN DATEPART(hour, x.person) < 4
THEN DATEADD (MINUTE, 55, x.person)
ELSE x.person
END AS person
FROM
new_table) f2
UNION
SELECT DATEPART( hour , done_person ) as hour_interval_1, COUNT(done_person) AS Total_done_person FROM
(
SELECT
case when DATEPART ( hour , x.done_person ) > 12 then DATEADD (MINUTE,-1 * DATEPART ( minute , x.done_person )-1,x.done_person)
when DATEPART ( hour , x.done_person ) < 4 then DATEADD (MINUTE, 55,x.done_person)
else x.done_person end as done_person
FROM done_table
) f3
group by hours
