У меня есть две таблицы для посещения пациента, а другая - для посещения. Я терпеливый визит от 10 до 70 в таблице поиска.Получить счетчик отсутствующих записей между двумя таблицами (SQL Server 2012)
Некоторые пациенты пропустили визиты в регулярное расписание. Скажите, что пациент пришел на визиты 10, 20, 30, 60 и 70. Таким образом, 40 и 50 будут пропущены.
Я хочу вернуть пациентов, у которых были пропущенные визиты.
Я попытался уйти соединять и подпросить, однако он возвращал мне только те записи в таблице пациентов.
Ниже приведен запрос, который я использовал и снимок экрана моего вывода.
SELECT Patient, vl.Visit, vl.VisitName FROM dbo.PatientVisit p LEFT OUTER JOIN dbo.Visitlookup vl ON p.VisitName = vl.VisitName
order BY p.Patient, vl.Visit
SELECT A.Patient, B.visit FROM
(SELECT Patient, Visit, VisitName FROM dbo.PatientVisit)A,
(SELECT Visit, VisitName FROM dbo.Visitlookup v1 WHERE v1.Visit NOT IN (SELECT Visit FROM dbo.PatientVisit v))B
WHERE A.Visit <> B.Visit
Может кто-нибудь помочь мне в получении номера пациента и визиты они пропустили?
Адрес sql fiddle.