BigQuery查询语法错误:期望输入结束却获标识符BD_Dictionary
问题排查与解决
错误原因分析
你遇到的语法错误核心有两处:
- SELECT子句字段分隔缺失:
MI.* except(...)后未添加逗号,直接拼接后续表的字段,导致SQL解析器无法识别字段边界,误将BD_Dictionary判定为非法标识符。 - 关联条件别名引用错误:ON子句中使用了未定义的别名
A,但主表的别名是MI,属于引用不匹配。
修正后的SQL语句
SELECT MI.* except(period_date, entity_level, email_access, period_filter), BD_Dictionary.BD_EMAIL, BD_Dictionary.AREA_LEAD, BD_Dictionary.BD_LEADER FROM `mi-trial-365509.Trial.MI` as MI INNER JOIN `mi-trial-365509.Trial.BD Dictionary` as BD_Dictionary ON MI.bd_email = BD_Dictionary.BD_EMAIL LIMIT 1000
关键修正点说明
- 在
MI.* except(...)末尾添加逗号,明确分隔不同表的字段列表 - 将ON子句中的
A.bd_email改为MI.bd_email,匹配主表定义的别名
内容的提问来源于stack exchange,提问作者byrmn__
相关产品推荐
相关产品推荐

