이렇게 생긴 테이블이 두 개 있어요
환자 (표 1)
id | name
------------
1 | robel
2 | dave
Patient_followup (표 2)
id | Patient_id | date_created
-----------------------
1 | ---- 1 -- | 01/01/2015
2 | -----1 -- | 01/07/2016
모든 환자의 관점에서 최신 후속 데이터를 표시하고 싶습니다. 그래서 나는이 쿼리를 사용해 보았습니다.
Select * from patient
left join Patient_followup pf on pf.Patient_id = patient.id
order by pf.date_created
Limit 1
그러나 이것은 나에게 첫 번째 환자의 로벨만을주는 것입니다. 나는 한계를 제거하려고 노력했고 robel에 두 개의 후속 데이터가 있기 때문에 두 개의 robel 레코드와 dave의 레코드를 제공했습니다. 그래서 각 환자의 기록을 하나만 얻으려면 어떻게해야합니까?
이 시도:
Select
*
from
patient
left join
(SELECT
id as pf_id,
MAX(date_created) as latest_followup_date,
Patient_id
FROM
Patient_followup
GROUP BY
Patient_id) as pf
ON pf.Patient_id = patient.id
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다