SQL内部联接的MS Access中的括号问题

1 sql ms-access inner-join

在MS Access中尝试了下面的SQL,但似乎无法让它工作,任何人都有更好的主意?

SELECT top 4 Student.STUDENT_DEGREE, Student.STUDENT_SEX,STUDENT_GROUP_ID,STUDENT_GROUP_ID2,RESULT_MARK
FROM (((Student)
INNER JOIN Result ON Student.STUDENT_ID=Result.RESULT_STUDENT_ID)
INNER JOIN Group ON RESULT_GROUP_ID = GROUP_ID)
where STUDENT_GROUP_ID <> ''
order by Result.RESULT_MARK desc;
Run Code Online (Sandbox Code Playgroud)

每当我运行这个我只是得到错误:

FROM子句中的语法错误

Han*_*sUp 5

Group是一个保留字.将该名称括在方括号中以避免混淆数据库引擎.您还可以为表名指定别名.

FROM
    (Student
    INNER JOIN Result
    ON Student.STUDENT_ID=Result.RESULT_STUDENT_ID)
    INNER JOIN [Group] AS g
    ON Result.RESULT_GROUP_ID = g.GROUP_ID
Run Code Online (Sandbox Code Playgroud)

我不得不猜测哪些表包含最后一个ON子句中的那些字段.如果在Access查询设计器的"设计视图"中设置连接,它将帮助您获得正确的名称.它还将添加db引擎对包含多个连接的任何查询所需的括号.

还可以为SELECT列表中的字段名称和查询中的其他位置限定表源.同样,查询设计器可以为您提供正确的名称.