我查看了一堆關於多對多查詢的問題和解決方案。我似乎無法繞過它。也許我不完全理解MySQL中的關鍵字。但...MySQL多對多查詢混淆
我有3個表格。第一個表格是人員聯繫信息的列表。第二個表是郵件列表類別的列表。第三個表是關聯表,其中包含第一個和第二個表中的id's
。我如何編寫一個MySQL
查詢來獲取聯繫人表中與VIP list id
(我已擁有)匹配的所有聯繫人?
表1(觸點)
id | name | email
-----------------------------
1 | John | [email protected]
-----------------------------
2 | Jane | [email protected]
-----------------------------
表2(LIST_TYPE)
id | list_name |
-----------------
1 | VIP's |
-----------------
2 | Generic |
-----------------
表3(list_contact_joiner)
contact_id | list_type_id |
----------------------------
1 | 2 |
----------------------------
2 | 1 |
----------------------------
這是我試過,但出現語法錯誤
$listID = 1;
SELECT list_contact_joiner.contact_id
FROM list_contact_joiner
WHERE list_id = $listID AS lcj
INNER JOIN contact_lists AS cl
ON cl.id = lcj.contact_id
謝謝。我使用了第二個版本,因爲我已經有了可用的列表ID。你能否簡單解釋一下'ON'關鍵字? – 2015-04-02 19:04:48
如果加入2個表格,則需要定義將兩者連接在一起的列。你在'ON'子句中這樣做。 – 2015-04-02 20:41:49