【问题标题】:MS Access Query SQL [closed]MS Access 查询 SQL [关闭]
【发布时间】:2021-08-15 19:19:36
【问题描述】:
SELECT PEOPLE2257.Person Id, PEOPLE2257.Name, PEOPLE2257.Gender, RESULTS2257.Minutes, RESULTS2257.Event
FROM PEOPLE2257 INNER JOIN RESULTS2257 ON PEOPLE2257.[Person Id] = RESULTS2257.Person;
(WHERE RESULTS2257.Minutes > ((SELECT AVG(RESULTS2257.Minutes) FROM RESULTS2257 WHERE RESULTS2257.Event = 2;))

这是怎么回事?

【问题讨论】:

    标签: sql database ms-access


    【解决方案1】:

    您的查询有几个问题。试试这个版本:

    SELECT p.[Person Id], p.Name, p.Gender, r.Minutes, r.Event
    FROM PEOPLE2257 AS p INNER JOIN
         RESULTS2257 AS r
         ON p.[Person Id] = r.Person;
    WHERE r.Minutes > (SELECT AVG(R2.Minutes)
                       FROM RESULTS2257 AS R2 
                       WHERE R2.Event = 2
                      );
    

    问题是:

    • Person IdSELECT 中有一个空格。
    • WHERE 子句周围没有开放括号。
    • 查询中间没有分号。
    • 额外的关闭父母。

    我还添加了表别名,以便查询更易于编写和阅读。

    【讨论】:

    • 您好,还是不行。它说在 SQL 语句之后找到字符。
    • @user16007570 。 . .您可以尝试删除分号。
    【解决方案2】:

    字段名称中有空格,所以:

    SELECT PEOPLE2257.[Person Id]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多