Sql 如何在BigQuery中创建可重用的自定义项

Sql 如何在BigQuery中创建可重用的自定义项,sql,google-bigquery,bigquery-udf,Sql,Google Bigquery,Bigquery Udf,我实现了一个解析复杂JSON并返回数百个字段以生成新表的程序 CREATE TEMP FUNCTION PARSE_DATA(input STRING) RETURNS STRUCT<field_a STRING, field_b STRING, field_c ARRAY<STRUCT<...>>, ... field_xxx STRING> LANGUAGE js AS """ return parseData(input) """

我实现了一个解析复杂JSON并返回数百个字段以生成新表的程序

CREATE TEMP FUNCTION
  PARSE_DATA(input STRING)
  RETURNS STRUCT<field_a STRING,
  field_b STRING,
  field_c ARRAY<STRUCT<...>>,
  ...
  field_xxx STRING>
LANGUAGE js AS """
return parseData(input)
"""
  OPTIONS (
  library="gs://foo/bar.js"
);
CREATE TEMP函数
解析_数据(输入字符串)
返回结构
语言js为“”
返回数据(输入)
"""
选择权(
library=“gs://foo/bar.js”
);

由于大多数JSON都非常相似,我已经实现了一个JSUDF来返回不同的模式。我的问题是如何通过更改RETURNS STRUCT来重用此UDF以生成不同的表?

目前
BigQuery
不允许您创建具有通用返回类型的UDF。如您所见,
STRUCT
类型必须显式命名其字段


我希望这能有所帮助

我不太明白你想要实现什么。您是否考虑使用伪代码来演示此想法?