MySQL LEFT JOIN错误#1064

时间:2015-09-05 17:12:36

标签: mysql sql

我正在尝试查询两个表:

  • tbl_sermons
  • tbl_sermons系列

我已经尝试过几种不同的MySQL查询方式,但它会继续使用类似的方法:

  

“#1064 - 您的SQL语法出错;请查看与您的MySQL服务器版本对应的手册,以便在''tbl_sermons-series'附近使用正确的语法   ON tbl_sermons.series_sermon ='tbl_sermons-series.id_seri'在第3行“

以下是查询:

SELECT tbl_sermons.title_sermon, tbl_sermons.slug_sermon, tbl_sermons.date_sermon, 'tbl_sermons-series.name_series' 
FROM tbl_sermons 
LEFT JOIN 'tbl_sermons-series' 
ON tbl_sermons.series_sermon = 'tbl_sermons-series.id_series';

我确定我做的事情很愚蠢......有人可以成为我的第二眼吗?

===

所以我曾经在一点上使用过反叛但是之前就出现了错误。我根据给出的建议(谢谢)回去使用反引号,现在我收到以下错误:

  

1054 - '字段列表'中的未知列'tbl_sermons-series.name_series'

我正在查看tbl_sermons-series表,它和我请求的字段(name_series)一样存在。如果我删除了对name_series的请求,只是在LEFT JOIN的末尾(在ON中的equals右边)留下tbl_sermons-series.id_series,它会抛出关于tbl_sermons.id_series的相同错误!

以下是tbl_sermons(第一个)和tbl_sermons-series(第二个)的平板电脑定义:

tbl_sermons tbl_sermons-series

目前失败的确切代码是:

SELECT tbl_sermons.title_sermon, tbl_sermons.slug_sermon, tbl_sermons.date_sermon, `tbl_sermons-series`.`name_series` 
FROM tbl_sermons 
LEFT JOIN `tbl_sermons-series` 
ON tbl_sermons.series_sermon = `tbl_sermons-series`.`id_series`;

1 个答案:

答案 0 :(得分:3)

不要在表名或列名周围使用引号。如果你必须使用反引号来逃避名称

SELECT s.title_sermon, s.slug_sermon, s.date_sermon, ss.name_series
FROM tbl_sermons s
LEFT JOIN `tbl_sermons-series` ss ON s.series_sermon = ss.id_series