[英]Left Join with last insert record from left table and all record form right table
根據公司ID從左側表中獲取帶有最后插入記錄的 連接的數據,而右側表中的所有記錄都無關緊要,因為左側表中有任何匹配記錄。
**company_list**
id
company_id
company_name
company_address1
company_address2
company_phone
company_headoffice
active
**company_subscription_list** table field name is
id
company_id
company_name
company_address1
company_address2
company_phone
company_headoffice
active
我正在使用此查詢來記錄病歷
SELECT *, c.id AS main_id
FROM company_list as c
LEFT JOIN company_subscription_list as s ON c.company_id = s.company_id
where s.id IN (select max(id) from company_subscription_list GROUP BY company_id)
但未顯示尚未訂閱的公司的結果。
需要幫忙。
您必須將條件置於加入條件中。 這樣做,您將不會丟失任何行:
SELECT *, c.id AS main_id
FROM company_list as c
LEFT JOIN company_subscription_list as s
ON c.company_id = s.company_id
AND s.id IN (select max(id) from company_subscription_list GROUP BY company_id)
嘗試以下鏈接: http : //sqlfiddle.com/#!9/5db87/4
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.