我想在mysql联接中使用WHERE
SELECT user.name , course.name
FROM `user`
LEFT JOIN `course` on user.course = course.id;我想在WHERE name='Alice'中添加user.name
我试着通过:
SELECT user.name WHERE name='Alice' , course.name
FROM `user`
LEFT JOIN `course` on user.course = course.id;或选择user.name,从user中选择course.name,其中user.name='Alice‘左加入course on user.course = course.id;
但是缝上了他们错了
如何在Mysql中使用WHERE (内连接、左连接、.)
发布于 2014-03-16 23:27:53
语法是错误的,正确的语法是
SELECT
FROM
JOIN
ON
WHERE 所以在你的情况下
SELECT a.name, b.name as bname
FROM `user` a
LEFT JOIN `course` b
ON a.course = b.id
WHERE a.name='Alice' 请注意,我使用了别名,因为两列具有相同的名称。
发布于 2014-03-16 23:27:03
差不多是对的。这样做应该很好:
SELECT u.name, c.name
FROM `user` u
LEFT JOIN `course` c on u.course = c.id WHERE u.name='Alice';我知道,想起来很奇怪,但实际上你就是这么做的。
我换了u和c,因为它更整洁。
发布于 2014-03-16 23:31:37
我不使用,但可以试试这个。
SELECT user.name AS user_name, course.name AS course_name
FROM user
LEFT JOIN course
ON user.id = course.id
WHERE user.name = 'Alice';https://stackoverflow.com/questions/22444507
复制相似问题