gpt4 book ai didi

mysql - 为什么mysql说有语法错误?

转载 作者:太空宇宙 更新时间:2023-11-03 10:58:47 27 4
gpt4 key购买 nike

我对外部连接的世界很陌生,我正在努力适应它们,但我不知道为什么 mysql 说语法不正确。有人愿意提供一些见解吗?

SELECT * FROM user_courses, course_updates 
WHERE user_courses.crn = course_updates.crn AND user_courses.user_id = 1
LEFT JOIN followers ON (followers.followee = course_updates.user_id)

最佳答案

LEFT JOIN 子句应位于 WHERE 子句之前。

SELECT * FROM user_courses, course_updates 
LEFT JOIN followers ON (followers.followee = course_updates.user_id)
WHERE user_courses.crn = course_updates.crn AND user_courses.user_id = 1

顺便说一句,你也可以对其他表使用`INNER JOIN,所以你没有两种语法:

SELECT * FROM user_courses
INNER JOIN course_updates on user_courses.crn = course_updates.crn
LEFT JOIN followers ON followers.followee = course_updates.user_id
WHERE user_courses.user_id = 1

请注意,我省略了 ON 条件周围的括号,这是完全有效的。此外,您还可以看到,使用 INNER JOIN,您可以在连接本身中指定连接条件,而 WHERE 子句仅用于过滤。我认为这会提高查询的可读性。

关于mysql - 为什么mysql说有语法错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17850294/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com