Google bigquery 创建中间重复字符串,并在BigQuery中传递给UDF

Google bigquery 创建中间重复字符串,并在BigQuery中传递给UDF,google-bigquery,user-defined-functions,Google Bigquery,User Defined Functions,我的最终目标是将重复的字符串字段传递到BigQueryUDF中,以创建varargs UDF的形式 有没有比以下更好的方法: 从myUDFSELECT splitconcatfield1',:',field2,…,,,,,:',选择输出 例如,如果能够有一个重复的内置构造函数,那就太好了: 从myUDFSELECT REPEATEDfield1中选择输出,field2作为字段…谢谢-我们一直在考虑在启动标量函数时,varargs样式的支持是否有用。当我们在规划功能时,听到用户会发现这样一个功能很

我的最终目标是将重复的字符串字段传递到BigQueryUDF中,以创建varargs UDF的形式

有没有比以下更好的方法:

从myUDFSELECT splitconcatfield1',:',field2,…,,,,,:',选择输出

例如,如果能够有一个重复的内置构造函数,那就太好了:


从myUDFSELECT REPEATEDfield1中选择输出,field2作为字段…

谢谢-我们一直在考虑在启动标量函数时,varargs样式的支持是否有用。当我们在规划功能时,听到用户会发现这样一个功能很有吸引力,这是很有帮助的


此时,您发布的解决方案可能是您最好的选择。

我认为您应该将此逻辑移到UDFfair中,但对CONCAT的调用仍然会保留,然后很容易忘记分隔符。没有CONCAT,您应该这样做-从myUDFSELECT field1、field2中选择输出。。。。所有的逻辑都属于UDF。除非您首先需要进行聚合:特定示例将有助于解决此问题谢谢-事实上,这种varargs样式的UDF的动机是由于缺少标量函数:我想将相同的函数应用于不同表中的多个公共字段,我将使用验证地址的示例。我宁愿构造一个同时应用于所有地址字段并提供正确输出的查找子查询,而不是为每个输入模式编写一个UDF。尽管如此,使用varargs标量还是很有用的,因为我们可以验证多个地址,例如,每个事务的地址,以及不同维度(例如,按客户)的地址。