我想列出患者及其最近的主要保險福利。我有涉及三個表,在MYSQL的多個表中選擇MAX
患者(包括病人的人口統計數據)
福利(包括保險金信息)
rel_pat_ben(匹配與相應的按鍵病人表的主鍵上的收益表)
我幾乎解決了這個問題:
SELECT p.patient_id,MAX(b.benefits_id),b.effective_date
FROM患者爲P
LEFT JOIN rel_pat_ben AS RPB USING(patient_id)
LEFT JOIN好處爲b ON(rpb.benefits_id = b.benfits_id AND b.order = '初級')
GROUP BY patient_id
使用MAX似乎工作,因爲id字段是自動遞增的,但是當我發現使用較新信息編輯具有較低id的記錄時,我意識到了我的問題。所以真的,我需要檢查'effective_date'字段。
是否有一種方法可以只爲每位患者返回一條只包含最近保險利益的記錄?
我添加了「最大每個組的標籤。這類SQL問題已經被很多次的回答了。 –
謝謝Bill!我保證在詢問之前我努力尋找答案。我發現了很多類似的問題,但都沒有解決我確切的問題。希望這會幫助下一個人。 – Charlie