【发布时间】:2021-03-13 16:34:30
【问题描述】:
我想使用 UDF 和 BQ 命令行在 BigQuery 中创建视图。 BQ 命令:
bq query --use_legacy_sql=false --project_id="myProject" \
'CREATE OR REPLACE FUNCTION udfFunc(str STRING) RETURNS STRING LANGUAGE js AS
"""
data = fromLib(str);
return JSON.stringify(data);
""" OPTIONS(library = "gs://<bucket>/lib_file.js");
SELECT'
col1,
col2,
udfFunc(col2) as new_col
FROM
`myProject:mySataset.table`'
我收到一个错误 无效值:例程名称“udfFunc”缺少数据集,而 请求中没有设置默认数据集。
【问题讨论】:
-
看起来错误消息非常清楚地回答了您的问题。对?你也应该使用
myProject.mySataset.table而不是myProject:mySataset.table。同时,您可以只使用 temp udf 而不是永久 - 在这种情况下将CREATE OR REPLACE替换为CREATE TEMP并且在这种情况下不需要数据集引用 -
非常感谢您的评论 :) 但我已经厌倦了它给出了一个错误“不支持使用临时用户定义函数创建视图”
标签: javascript command-line google-bigquery user-defined-functions