我的查询看起来像这样:限制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