创建BigQuery视图时为STRUCT子字段加描述遇语法错误的求助
解决BigQuery视图中STRUCT子字段添加描述的语法错误问题
错误原因
你编写的SQL在视图列定义中直接为STRUCT类型列的子字段添加OPTIONS的写法不符合BigQuery语法规范,因此触发了语法错误。BigQuery不支持在视图的列声明部分嵌套STRUCT子字段的OPTIONS配置。
正确实现方式
要为STRUCT子字段添加描述,需要在SELECT语句中显式构造STRUCT时,为每个子字段单独设置OPTIONS,同时可以为整个STRUCT列添加描述。示例SQL如下:
CREATE OR REPLACE VIEW MyDataset.MyView ( id OPTIONS(description="unique ID"), location OPTIONS(description="Event Location Record") ) AS SELECT id, STRUCT( location.id AS id OPTIONS(description="Location ID for Event"), location.description AS description OPTIONS(description="Loc Desc") ) AS location FROM location_table;
说明
这种写法通过在查询构造STRUCT的过程中,为每个子字段单独配置描述属性,既满足了为STRUCT子字段添加描述的需求,又完全符合BigQuery的语法规则,能够正常执行。
内容的提问来源于stack exchange,提问作者fancybear
相关产品推荐
相关产品推荐

