我有如下三個表:
呼叫串列(表)
| ID | 線 | rel_type | rel_id |
|---|---|---|---|
| 1 | 3 | 用戶 | 2 |
| 2 | 10 | 帶領 | 1 |
用戶(表)
| ID | 姓名 | 電話 |
|---|---|---|
| 1 | 梅蘭 | 99999 |
| 2 | 禮薩 | 222222 |
引線(表)
| ID | 標題 | 地位 |
|---|---|---|
| 1 | 鉛_1 | 確認的 |
| 2 | 鉛_2 | 待辦的 |
我想說在calls_list表上select的時候如果rel_type列等于lead值,加入lead表但是如果rel_type列等于user值,加入users表
我的查詢是:
SELECT * FROM calls_list as calls LEFT OUTER JOIN users as users ON users.id = calls.rel_id LEFT OUTER JOIN lead as Lead ON Lead.id = calls.rel_id
但不作業
這可能嗎?你能幫助我嗎
uj5u.com熱心網友回復:
您需要將每個連接限制為僅具有正確型別的連接:
SELECT *
FROM calls_list AS c
LEFT OUTER JOIN users AS u
ON u.id = c.rel_id AND c.rel_type = 'user'
LEFT OUTER JOIN lead AS l
ON l.id = c.rel_id AND c.rel_type = 'lead'
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/460374.html
