에 해당하는 일부 데이터를 가져 오기 나는이 세 테이블이 : N 관계 :최대 날짜
Table ORG:
Fields:historyid, personid
Table PERSON:
Fields: id
Table HISTORY:
Fields: id,date,personid
모두 역사와 ORG는 1 사람에게 연결되어 있습니다. 또한 ORG는 1 : N 관계로 HISTORY에 연결됩니다. ORG 테이블에서 각 사람에 대해 하나의 행만 가져오고 싶습니다.이 행은 가장 높은 날짜의 HISTORY 행에 해당합니다. 다음 SQL은 특정 사용자에게 가장 높은 날짜를 제공합니다. 그러나, 나는 이것을 위의 요구 사항과 결합하는 방법을 모른다.
SELECT ash1.id
FROM
(SELECT * FROM history a WHERE a.personid=person.id) ash1
LEFT JOIN
(SELECT * FROM history b WHERE b.personid=person.id) ash2
ON ash1.personid=ash2.personid
AND ash1.date < ash2.date
WHERE ash2.date IS NULL
태그 질문. –