Как составить из 2 запросов один, который будет выводить больше столбцов из одной таблицы?
Вопрос состоит в том чтобы составить из 2 запросов один, который будет выводить больше столбцов из одной таблицы пример первого запроса:
SELECT [HospitalID_Ref],
count(*) as 'Зарегистрированно '
FROM [REMD].[dbo].[MedicalDocument]
where MedicalDocumentDate between '20230101' and '20230118 23:59:59' and MedicalDocumentTypeID_Ref=141 and sent = 1
group by HospitalID_Ref
он выводит таблицу из двух столбцов
Пример второго запроса
SELECT [HospitalID_Ref],
count(*) as 'успешно'
FROM [REMD].[dbo].[MedicalDocument]
where MedicalDocumentDate between '20230101' and '20230118 23:59:59' and MedicalDocumentTypeID_Ref=141 and REMDID is not null
group by HospitalID_Ref
он выводит другую информацию:
как мне из этих двух запросов сделать один который будет выводить инфу так:
Ответы (1 шт):
Автор решения: Akina
→ Ссылка
SELECT HospitalID_Ref,
SUM(CASE WHEN sent = 1 THEN 1 ELSE 0 END) as 'Зарегистрировано',
SUM(CASE WHEN remdid IS NOT NULL THEN 1 ELSE 0 END) as 'Успешно'
FROM [REMD].[dbo].[MedicalDocument]
WHERE MedicalDocumentDate BETWEEN '20230101' AND '20230118 23:59:59'
AND MedicalDocumentTypeID_Ref = 141
-- AND (sent = 1 OR remdid IS NOT NULL)
GROUP BY HospitalID_Ref


