Ниже мои данные:Самые последние даты с несколькими поставщиками
MedicalRecordNumber edcdate wk lastappt facility provider
---------------------- ---------- ----- ---------------------- --------------- ------------------------
255599 10/9/2014 37 3/8/2014 0:00 Women's Health Prenatal Registration
255599 10/9/2014 37 6/12/2014 0:00 Women's Health Tarcia
255599 10/9/2014 37 9/4/2014 0:00 Women's Health Beaven
Это SQL, я использую:
Select a.ownerid, p.patientprofileid, p.searchname,
max(a.EmrApptStart) as LastAppt, f.listname as facility, d.ListName as Provider
from Appointments a
left join patientprofile p on p.PatientProfileId= a.OwnerId
inner join DoctorFacility f on f.DoctorFacilityId = a.FacilityId
inner join DoctorFacility d on d.DoctorFacilityId = a.ResourceId
where a.FacilityId in ('127','64') and p.MedicalRecordNumber = '00255599' and a.Status in ('Completed','Arrived')
group by a.OwnerId,p.patientprofileid, p.searchname,f.listname, d.listname
Я пытаюсь получить самую последнюю дату и поставщик они увидел, когда я не включать поставщика в группе посредством, я получаю результаты, которые необходимы, смотрите ниже:
Select a.ownerid, p.patientprofileid as MRN, p.searchname,
max(a.EmrApptStart) as LastAppt, f.listname as facility
from Appointments a
left join patientprofile p on p.PatientProfileId= a.OwnerId
inner join DoctorFacility f on f.DoctorFacilityId = a.FacilityId
inner join DoctorFacility d on d.DoctorFacilityId = a.ResourceId
where a.FacilityId in ('127','64') and p.MedicalRecordNumber = '00255599' and a.Status in ('Completed','Arrived')
group by a.OwnerId,p.patientprofileid, p.searchname,f.listname
MRN LastAppt facility
---------- -------------- --------------------
255599 9/4/2014 0:00 Women's Health
Если я включаю поставщика в моем SELEC t, я получаю сообщение об ошибке, если я не включаю его в предложение Group By. Есть идеи?
это работало чудесно для одного пациента, но это объединение в большем SQL и будет тянуть только для одного конкретного пациента .. , – user3658115