我的查詢看起來像這樣:限制LEFT JOIN結果爲1,靈活的where子句
SELECT
count(users.id)
FROM users
LEFT JOIN mail_sender_jobs_actions ON mail_sender_jobs_actions.userID = users.id
LEFT JOIN table2 ON table2.userID = users.id
LEFT JOIN table3 ON table3.userID = users.id
WHERE {$flexibleWhereClause}
現在,mail_sender_jobs_actions表可以(犯規需要返回任何東西)返回多個條目。我不想分組結果,但仍限制mail_sender_jobs_actions返回到1,所以我不重複...否則計數將無法正常工作。
刮掉了整個網頁,發現我沒有工作,因爲我想保持where子句的靈活性。任何解決方案
編輯
這樣來說明情況。我們有一個包含用戶(用戶)的表格。我們有一個表格(mail_seder_jobs_actions)。我們還有其他與該查詢無關的表格(表格1,表格2,表格3)
如果用戶執行操作,則會在操作表格中創建一個條目。
Where子句是靈活的,這意味着有人可能只想向用戶顯示特定的操作。
也可能某個操作與用戶無關,因此該條目被忽略。
這是否意味着您只是想要查詢的第一個結果? – Aleeeeee
不,它返回一堆用戶。但是現在它會爲同一用戶返回重複項,因爲user_id在mail_sender_jobs_actions表中多次出現... – jQuery
因此,您希望每個用戶有1行?如果是這樣,你必須組 – Aleeeeee