【发布时间】:2015-06-02 14:56:28
【问题描述】:
我正在尝试让多个表选择其中 ID = 变量。
示例代码如下,我相信它应该可以工作,但不知何故我在语法上有一些错误。
SELECT c.id, c.firstname, c.surname, c.email, c.process, c.search_work, c.note,
group_concat(DISTINCT ce.enforcement) as enfor,
group_concat(DISTINCT cc.city) as city
FROM candidates AS c
LEFT JOIN candidates_language AS cl ON c.id = cl.candidates_id
LEFT JOIN candidates_enforcement as ce on c.id = ce.candidates_id
LEFT JOIN candidates_city as cc on c.id = cc.candidates_id
GROUP BY c.id, c.firstname, c.surname, c.email
WHERE c.id='8'
小提琴: http://sqlfiddle.com/#!9/25b1b/24
错误: 您的 SQL 语法有错误;查看与您的 MySQL 服务器版本相对应的手册,以了解在 'WHERE id=' 附近使用的正确语法
请问有人可以指导我做错了什么吗?
【问题讨论】:
-
WHERE 必须在您的 GROUP BY 语句之前 :) WHERE 始终在 group by 之前,因为它在分组之前过滤数据。您可以在 group by 之后使用 HAVING 来做相反的事情。
标签: mysql