Я пытаюсь выяснить долю строк, в которых два столбца не совпадают:
Этот код дает один или ноль (в зависимости от того, как я определяю пустышку):
SELECT CAST(AVG(subq.ens) AS DECIMAL(10,7))
from (select INDDATO_DATO, INDTIDSPUNKT_DRGKONTAKT_DATO, LeveranceDato_DATO,
case
when INDDATO_DATO = INDTIDSPUNKT_DRGKONTAKT_DATO THEN 1
else 0
end as ens
FROM [Patient_kval].[DRG2018].[V_DRG2018_DRGKONTAKTER]
where LeveranceDato_DATO= '2019-03-27'
) subq
Но я решил проблему, посчитав два раза и разделив, и результат составляет 35%. То есть Я сделал это:
SELECT count(*)
FROM [Patient_kval].[DRG2018].[V_DRG2018_DRGKONTAKTER]
where LeveranceDato_DATO= '2019-03-27' and INDDATO_DATO = INDTIDSPUNKT_DRGKONTAKT_DATO; -- 1.954.352
SELECT count(*)
FROM [Patient_kval].[DRG2018].[V_DRG2018_DRGKONTAKTER]
where LeveranceDato_DATO= '2019-03-27';-- 5.441.763
Но хотелось бы узнать, в чем проблема с первым способом.