МОЯ входной таблицы patient_ID и Appt_Resource_ID (Доктор) (вторая таблица просто получить имя пациента)Запрос возвращает неправильный результат
Patient_ID Appt_Resource_ID
88299 47
88299 1
88299 40
88299 40
88299 40
88299 40
Я бегу в SQL, который предназначен для записи выходной строки для patient_id и Doctor_ID, что больше всего, в этом случае sb 40. Но он выводит Doctor_ID 1. Другие случаи, которые я проверил, выполняются правильно.
Это запрос:
select distinct A.Patient_id, P.Patient_name, b.Appt_resource_id
from [PM].[vwGenPatApptInfo] A
inner join
(
select top 100 percent patient_id, Appt_resource_id, count(Appt_resource_id) as DR_count,
row_number() over (partition by patient_id order by count(*) desc) as seqnum
from [PM].[vwGenPatApptInfo]
where Patient_ID is NOT NULL
group by patient_id,Appt_resource_id
order by patient_id, seqnum
) B on B.Patient_ID = A.Patient_ID
and B.seqnum = 1
inner join [PM].[vwGenPatInfo] P on A.Patient_id = P.Patient_id
where A.Appt_DateTime >= DATEADD(yyyy, -2, GETDATE()) and A.Appt_Cancelled_Date is NULL
Но результаты этого:
Patient_ID Appt_Resource_ID
88299 1