如何处理BigQuery嵌套记录中含关键字order的点符号访问问题
解决BigQuery中关键字作为嵌套记录字段名的访问问题
在BigQuery里,当嵌套字段名是SQL关键字(比如这里的order)时,需要用反引号将字段名包裹起来,才能正确访问其嵌套字段。
正确的查询语句
SELECT `order`.merchantOrderId FROM `MYTABLE` LIMIT 1000
为什么之前的方法会报错
- 直接写
order.merchantOrderId时,order是SQL中的关键字(用于ORDER BY语句),BigQuery会将它解析为关键字而非字段名,因此触发语法错误。 - 使用
['order'].merchantOrderId时,这种语法是用来访问数组元素或字典类型的键值,但你的order是嵌套记录字段,并非数组或字典,所以BigQuery会认为你在操作字符串数组,自然无法访问merchantOrderId字段。
内容的提问来源于stack exchange,提问作者SwimJim
相关产品推荐
相关产品推荐

