BigQuery执行SQL时出现'Unrecognized name: start_lng'错误求助
排查BigQuery中
start_lng字段未识别的问题 以下是针对该问题的具体排查和解决步骤:
1. 核对SQL中的表与字段引用准确性
- 逐行检查2021版本SQL里的表名拼写,确认所有
_2021后缀的表都和你截图中的表名完全一致(包括大小写、特殊字符,BigQuery对标识符的大小写敏感,若表名是系统生成的需严格匹配) - 确认SQL中
start_lng字段的拼写无笔误,比如是否误写为start_long、start_lon等变体
2. 直接查询元数据验证字段存在
在BigQuery控制台执行以下语句,从元数据层面确认目标表的字段情况:
SELECT column_name FROM `你的项目ID.Cyclist_data.INFORMATION_SCHEMA.COLUMNS` WHERE table_name LIKE '%_2021' ORDER BY ordinal_position;
替换你的项目ID为实际项目ID,查看返回结果中是否存在start_lng,且字段名拼写、大小写与SQL中使用的完全一致。
3. 排查别名与表前缀错误
- 若SQL中给表设置了别名,确认字段引用时使用的是正确别名,比如避免出现
SELECT t.start_lng FROM xxx_2021 AS trips这类别名不匹配的情况 - 确认所有
_2021表都在Cyclist_data数据集下,若存在跨数据集引用,需补充完整的项目.数据集.表名路径
4. 清除会话缓存重试
- 刷新BigQuery控制台页面,重新执行2021版本的SQL,避免会话缓存导致的元数据读取异常
- 若使用命令行工具,先执行
bq ls --schema Cyclist_data.目标表名_2021确认字段结构,再重新运行创建表的SQL
5. 检查子查询/CTE的字段引用
如果创建表的SQL包含子查询或CTE,确认这些嵌套逻辑中是否正确引用了start_lng字段,比如是否在子查询中遗漏该字段,或者子查询的表引用错误
内容的提问来源于stack exchange,提问作者Minh
相关产品推荐
相关产品推荐

