sql - 无法弄清楚 Access SQL 语法错误

标签 sql ms-access

我正在尝试在 Microsoft Access SQL 中编写此查询,但我终究无法找出代码中的语法错误。

SELECT base.study_group, base.NPI,inv.log_date AS invite_date, rec.log_date as
recieved_date, rej.log_date as reject_date
FROM CODAAC_master AS base
LEFT JOIN Pre_Log AS inv ON base.NPI = inv.NPI AND inv.tracking_event='INVA'
LEFT JOIN Pre_Log AS rec ON base.NPI = rec.NPI AND rec.tracking_event='RECA'
LEFT JOIN Pre_Log AS rej ON base.NPI = rej.NPI AND rej.tracking_event='REJA'
WHERE base.study_year = '2013'
ORDER BY base.study_group, base.NPI;

我得到的错误是:

"Syntax error (missing operator) in query expression"

最佳答案

MS Access 需要用括号括住多个连接:

SELECT base.study_group, 
  base.NPI,
  inv.log_date AS invite_date, 
  rec.log_date as recieved_date, 
  rej.log_date as reject_date
FROM ((CODAAC_master AS base
LEFT JOIN Pre_Log AS inv 
  ON base.NPI = inv.NPI AND inv.tracking_event='INVA')
LEFT JOIN Pre_Log AS rec 
  ON base.NPI = rec.NPI AND rec.tracking_event='RECA')
LEFT JOIN Pre_Log AS rej 
  ON base.NPI = rej.NPI AND rej.tracking_event='REJA'
WHERE base.study_year = '2013'
ORDER BY base.study_group, base.NPI;

关于sql - 无法弄清楚 Access SQL 语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15705375/

相关文章:

mysql - 在 Ms. Access 中生成随机字母数字 key

java - 将数据插入具有大量列的表中

mysql - 我怎样才能加入空?

mysql - 单行的多个值

c# - 我们如何解决将 Access DB 从生产服务器转移到实时服务器的日期时间问题

ms-access - 在代码中设置值而不是 AfterUpdate() 后更新 VBA 表单

mysql - 1 : The action 'Install' for product 'MySQL Server 5.7.21' failed

mysql - 在 SQL 中连接多个查询

excel - VBA 从 MS Access 获取值的 SUM,返回错误 : No Value Given For One or More Parameter

ms-access - 如何使用 Microsoft Access 在备忘录字段中查找单词