Access多表左连接查询报错‘Syntax error (missing operator)’,求排查
问题排查与解决
- 错误原因:你的SQL语句在Microsoft Access这类数据库中不符合语法规范——Access要求多表连续左连接时,必须用括号明确连接的层级关系,否则会触发「Syntax error (missing operator)」错误。
- 修正后的SQL语句:
SELECT * FROM (users AS u LEFT JOIN user_permissions AS up ON u.id = up.id_user) LEFT JOIN permissions AS p ON up.id_permission = p.id;
- 额外说明:如果使用的是MySQL、PostgreSQL、SQL Server等主流数据库,原语句语法本身是合法的,报错则说明你当前使用的是对连接语法有特殊限制的数据库(如Access)。
内容的提问来源于stack exchange,提问作者Vinicius Andrade
相关产品推荐
相关产品推荐

