0
我有2個表:MySQL的 - 參加一個查詢
導致
|lead_id|name| | 1| a| | 2| b| | 3| c|lead_phases
|phase_id|phase_lead_fk|phase_sort|phase_status| | 1| 1| 1| 1| | 2| 1| 2| 0| | 3| 2| 3| 1| | 4| 2| 1| 0| | 5| 2| 2| 0| | 6| 3| 1| 0| | 7| 3| 2| 1|
我必須寫一個查詢其顯示連接表由lead_id和列phase_sort的最高值分組。
的結果,我希望收到:
|lead_id|name|phase_id|phase_sort|phase_status| | 1| a| 2| 2| 0| | 2| b| 3| 3| 1| | 3| c| 7| 7| 1|
我的查詢:
SELECT phase_id,phase_lead_fk,phase_sort,phase_status FROM leads LEFT JOIN lead_phases ON lead_id=phase_lead_fk GROUP BY lead_id
這GROUP BY是無效的,甚至不會在較新版本的MySQL執行(除非在兼容模式下)。一般GROUP BY規則說:如果指定了GROUP BY子句,則SELECT列表中的每個列引用都必須標識一個分組列或者是一個set函數的參數。 – jarlh
您需要一個使用GROUP BY的子查詢來返回每個lead_id的最高phase_sort。加入那個結果。 – jarlh