【问题标题】:Sql query in MS Access producing Syntax errorMS Access 中的 Sql 查询产生语法错误
【发布时间】:2013-04-24 10:09:59
【问题描述】:

我在使用 MSAccess 进行查询时遇到问题。代码如下:

SELECT CustomerId, FirstName, Surname, DateOfBirth, WorkoutId, Name, Description
   FROM Customer 
   INNER JOIN (Registration INNER JOIN TrainingProgram (INNER JOIN WorkOutPlan)) 
   ON Customer.CustomerId = Registration.CustomerId 
   ON Registration.CustomerId = TrainingProgram.CustomerId 
   ON TrainingProgram.WorkId = WorkOutPlan.WorkId
      WHERE DateOfBirth > #01/01/83#;

数据库是为一个虚构的健身房创建的。

查询的目的是显示出生日期大于 83 年 1 月 1 日的成员所参加的锻炼计划。查询选择的信息来自 3 个表。客户、培训计划和锻炼计划。另一个表“注册”将客户表和培训计划表与“客户 ID”链接

查询产生语法错误并突出显示括号'"("INNER JOIN WorkOutPlan))'。我看不到代码有任何问题,但也许我在此过程中犯了一个错误?

非常感谢您的帮助。

【问题讨论】:

    标签: mysql sql ms-access


    【解决方案1】:

    正确的括号

    SELECT CustomerId, FirstName, Surname, DateOfBirth, WorkoutId, Name, Description
    FROM (Customer 
    INNER JOIN (Registration
                INNER JOIN (TrainingProgram
                            INNER JOIN WorkOutPlan 
                                       ON Customer.CustomerId = Registration.CustomerId )
                            ON Registration.CustomerId = TrainingProgram.CustomerId )
                ON TrainingProgram.WorkId = WorkOutPlan.WorkId)
    WHERE DateOfBirth > #01/01/83#;
    

    【讨论】:

    • 感谢您的回复!对此,我真的非常感激!我仍然收到语法错误。它在加入操作中说它并突出显示来自 -> 'SELECT "Customer"Id,' 的客户。我玩了一下,但似乎又找不到任何问题
    猜你喜欢
    • 2014-02-25
    • 2014-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多