INNER JOINS的SQL语法出错

时间:2015-03-10 23:31:05

标签: mysql

我一直试图通过rstudio运行这个mysql查询,但是我一直收到错误。知道为什么吗?

这是我的问题:

SELECT host.key AS 'uid',
 daily_summary.date AS 'date' 
 FROM host INNER JOIN daily_summary 
 USING(weekly_id);

这是我得到的错误。

42000 1064 [MySQL][ODBC 5.1 Driver][mysqld-5.5.40-
0ubuntu0.14.04.1]You have an error in your SQL syntax; 
check the manual that corresponds to your MySQL server 
version for the right syntax to use near 'FROM host INNER 
JOIN daily_summary USING(weekly_id)' at line 1

3 个答案:

答案 0 :(得分:0)

这是查询,因为最好写一下:

SELECT host.key AS uid, daily_summary.date
FROM host INNER JOIN
     daily_summary 
     USING(weekly_id);

除了删除虚假逗号外,还会删除列别名周围不需要的引号。仅对字符串和日期常量使用单引号。否则,它们可能会导致查询混乱。如果您需要在MySQL中转义别名,请使用反引号。

答案 1 :(得分:0)

在没有拼写错误的情况下检查版本简化:

SELECT host.key, daily_summary.date
FROM host INNER JOIN daily_summary 
USING(weekly_id);

我也更喜欢使用单词ON而不是USING:

SELECT host.key, daily_summary.date
FROM host INNER JOIN daily_summary 
ON host.weekly_id = daily_summary.weekly_id

答案 2 :(得分:0)

MySQL语法错误消息显示您的语句的一部分,从它无法理解的第一个字符开始。在您的情况下,它无法理解的第一个字符是FROM。它正在寻找逗号之后的另一个列名。