我想通过UDF函数传入'n'个字符串,但它显示了如何执行的错误
这是我的代码:
CREATE TEMP FUNCTION getDataOfTheseKeys(x ANY TYPE)
AS (
SELECT * FROM TABLE keys IN (x)
)
SELECT * FROM getDataOfTheseKeys("key1","key2","key3")
这不起作用。。
我给您举一个array
作为udf
:参数的例子
CREATE TEMP FUNCTION getDataOfTheseKeys(arr ANY TYPE)
AS (
(select array_agg(id) from `project.dataset.table` where id IN UNNEST(arr))
);
SELECT
getDataOfTheseKeys(x) AS el
FROM (
SELECT ['ecaff28db267', '452094b23ee1', 'ecavf28db269'] AS x
);
在我的示例中,表中存在ecaff28db267
和452094b23ee1
,但不存在ecavf28db269
这种情况下的结果是:
CCD_ 7的CCD_;
ecaff28db267
452094b23ee1