1対1の関係の列が1対多の関係のテーブルのすべての行を選択するmysqlクエリを作成しようとしています。 basicaly私は終了し、すべてのリードがされていませんしたい1.SQLは1対1の関係の1対1の列ではありません
私の失敗クエリ
SELECT * from `leads`
LEFT JOIN `call_lead` on `leads`.`id` = `call_lead`.`lead_id`
LEFT JOIN `call_result_codes` ON `call_lead`.`call_result_code_id` = `call_result_codes`.`id`
AND `call_result_codes`.`finished` in (0) group by `leads`.`id`
これが失敗し、まだすべては、彼らが終了した1
の予想される出力を使用してコードを持っている場合でも、リードを返しますID 12と
リードを可能とidでつながる2
表リード
_____________________
|id | name |
|2 | test name |
|8 | test name2 |
|12 | test name2 |
表は
_____________________________________________________
|id | lead_id | user_id | call_result_code_id |remark|
|22 | 8 | 1 | 0 |test |
|23 | 8 | 1 | 1 |test |
|24 | 2 | 1 | 0 |test |
をcall_lead 表のcall_result_codes
________________________________
|id | description | finished |
|0 | not answering | 0 |
|1 | not interested| 1 |
これは期待どおりに動作します。 – Maantje
問題ありません! @ marsje – sagi
今、エラーを発見しました。 call_leadに、結果コードが終了していないリードと同じリードで終了したレコードのレコードが1つある場合でも、それは返されます。 – Maantje