【问题标题】:mysql left join syntax error 1064mysql左连接语法错误1064
【发布时间】:2017-11-02 14:30:50
【问题描述】:

真的难倒这个。它应该是对第二个表的简单左连接,但我遇到了语法错误。试图获得不完整项目的最后截止日期。

代码:

  SELECT * 
    FROM TBLTICKETHEADER h, 
            LEFT JOIN (SELECT HEADERID, MAX(DUEDATE)
                       FROM TBLTICKETITEM
                       WHERE YEAR(COMPLETEDDATE) = 9999
                       GROUP BY HEADERID) ld ON ld.HEADERID = h.HEADERID

错误:

1064 - 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册以获取正确的语法使用 'LEFT JOIN (SELECT HEADERID, MAX(DUEDATE) 附近 来自第 3 行的 TBLTICKETIT'

【问题讨论】:

  • 去掉左加入前的逗号
  • FROM TBLTICKETHEADER h, 删除 h 旁边的 ,

标签: mysql left-join


【解决方案1】:

在 from 子句的 h 后面有一个逗号。删除它,您的查询应该运行。

 SELECT * 
    FROM TBLTICKETHEADER h
            LEFT JOIN (SELECT HEADERID, MAX(DUEDATE)
                       FROM TBLTICKETITEM
                       WHERE YEAR(COMPLETEDDATE) = 9999
                       GROUP BY HEADERID) AS ld ON ld.HEADERID = h.HEADERID

【讨论】:

  • 谢谢!当你盯着某个东西看一个小时却看不到它时,这真是令人尴尬!今天早上我一定需要更多的咖啡。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-10
  • 2015-04-25
  • 1970-01-01
  • 2018-12-28
  • 1970-01-01
  • 2017-05-06
相关资源
最近更新 更多