问题标签 [bigquery-udf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
85 浏览

google-bigquery - 按特定顺序组合字符串

样品表

数字 DEAL_NUMBER NAME1 NAME2
1 T01 汤姆 杰瑞
2 T02 勒布朗 史蒂文

希望输出如下:

数字 DEAL_NUMBER NAME1 NAME2 名称_COM
1 T01 汤姆 杰瑞 勒布朗·汤姆·史蒂文·杰里
2 T02 勒布朗 史蒂文 勒布朗·汤姆·史蒂文·杰里

使用 string_agg 函数可以解决,但不够方便。

有什么方法可以做得更好吗?

0 投票
1 回答
32 浏览

google-bigquery - 具有引用表和值的 Bigquery 动态 SQL

我有一个场景,我需要使用以下两个表生成动态 SQL:

在此处输入图像描述

在此处输入图像描述

用户可以在 ref_table 中添加许多行。我需要根据 Ref_table 中的所有条目动态创建以下 SQL:

任何人都可以帮我编写动态 sql 来生成上面包含 ref_table 中所有条目的 sql 吗?

0 投票
1 回答
87 浏览

google-bigquery - 是否有 UDF 可以帮助修剪每个表中的所有字符串空间?

我是一个 bigquery 用户,这里需要修剪表中 (data type=string) 的所有空格。

通常,每个表中有数百个字段
如果我一个一个地使用它,这是非常低效的。

是否有可能有更好的解决方案或创建 UDF 来解决?

样品表:

0 投票
2 回答
40 浏览

sql - 从 BigQuery 中的每日需求中减去库存并添加新库存

这是我的数据的样子:

日期 库存单位 库存添加 要求
2021 年 11 月 22 日 XYZ 70 18
2021 年 11 月 23 日 XYZ 0 18
2021 年 11 月 24 日 XYZ 0 50
2021 年 11 月 25 日 XYZ 0 15
2021 年 11 月 26 日 XYZ 80 30
2021 年 11 月 27 日 XYZ 0 20
2021 年 11 月 28 日 XYZ 0 15
2021 年 11 月 29 日 XYZ 0 20
2021 年 11 月 30 日 XYZ 0 10
2021 年 12 月 1 日 XYZ 100 40
2021 年 12 月 2 日 XYZ 0 10

我想创建一个solution使用 BigQuery SQL 命名的新列,在第一行,即 2021 年 11 月 22 日,我希望公式为 - inventory_added - demand。这将给我第一行的值为solution52。

现在我不能做的是从第二行开始:所以,接下来,将是52 (remaining inventory from previous day) + 0 (inventory_added on 23rd Nov 2021) - 18 (demand on 23 Nov 2021). 这等于 34。

同样转到下一行,即 11 月 24 日:值 insolution将是34 + 0 - 50 = -16。现在因为它是负数,所以应该把它设为 0。

我试过这个 - MAX(solutions, 0)

结果将如下所示:

日期 库存单位 库存添加 要求 解决方案
2021 年 11 月 22 日 XYZ 70 18 52
2021 年 11 月 23 日 XYZ 0 18 34
2021 年 11 月 24 日 XYZ 0 50 0
2021 年 11 月 25 日 XYZ 0 15 0
2021 年 11 月 26 日 XYZ 80 30 50
2021 年 11 月 27 日 XYZ 0 20 30
2021 年 11 月 28 日 XYZ 0 15 15
2021 年 11 月 29 日 XYZ 0 20 0
2021 年 11 月 30 日 XYZ 0 10 0
2021 年 12 月 1 日 XYZ 100 40 60
2021 年 12 月 2 日 XYZ 0 10 50

我不确定这是否可以通过 BigQuery 完成,但欢迎提出所有建议。

谢谢!

0 投票
0 回答
25 浏览

google-bigquery - 带有 UDF Javascript 的 BigQuery 函数

我需要创建一个使用 BigQuery 的 UDF 和 Javascript 语言的函数。在该 UDF 中,它连接一些字符串以形成完整的查询。但最后,我需要执行查询。

我试过使用 EXECUTE IMMEDIATE,但我的目标不是成功,因为当我调用 SELECT d.myFunction() 时,它只返回字符串,而不是它的数据。

有谁知道如何解决这个问题?

0 投票
1 回答
37 浏览

sql - 在 BigQuery SQL UDF 中存储变量

我正在尝试在 bigQuery 中创建一个 SQL UDF 来计算每月的周数。我得到了我期望的结果,但我的函数看起来超级混乱。

有没有办法在 bigQuery 中存储变量,这样我的代码看起来不会那么混乱?到目前为止,我一直在阅读 bQ 文档,但还没有找到在函数内部存储变量的方法(对于 SQL UDF)

任何帮助将不胜感激,谢谢!

0 投票
2 回答
94 浏览

google-bigquery - 在 Bigquery UDF 中使用地理编码服务

我正在尝试创建一个使用 Google地理编码服务的 Bigquery UDF 函数。

看来我们可以使用option 参数导入外部库,但我觉得我不能在这里使用地理编码服务。

遵循我的功能方法:

它抱怨是因为当我尝试使用该功能时它当然不知道google说什么。ReferenceError: google is not defined at UDF$1(STRING) line 2, columns 23-24

我的最终目标是将我在 Bigquery 数据集中的地址转换为纬度/经度,这样我就可以在可视化工具中创建热图。

对于我的方法或完全不同的东西有什么建议吗?我看到了一些使用一些公共 Bigquery 数据集的建议(openstreetmaps 建议),但我有来自德国的地址,但它并没有很好地涵盖这一点。

Bigquery 似乎也不支持这种转换方式

先感谢您!

0 投票
2 回答
48 浏览

google-bigquery - 按组分区的单个列值的所有可能的唯一组合

我在 Google BigQuery 中有一个如下表。Item我正在尝试获取分区上的列的所有可能的唯一组合(除空子集外的所有子集)Group

我正在寻找如下输出:

我试图使用这个公认的答案来合并Group无济于事: 如何从单列中获取值的组合?

0 投票
1 回答
30 浏览

google-bigquery - 将 BigQuery javascript UDF 应用于组

我正在尝试将 javascript 用户定义函数应用于组。在下面的代码中, -- group by my_groupinsidetuple被注释掉了。我想在每个 inside 上应用temptest函数。如果 group by 被注释掉,代码就会运行。如果我尝试包含 group by,它会产生一个“标量子查询产生了多个元素”。我应该进行哪些更改,以便我可以为每组输出一个数组 ( )?my_grouptest_datamy_group

我正在寻找如下输出:

0 投票
1 回答
16 浏览

sql - 使用案例重新映射 SQL

我目前有一个这样的 SQL 查询:

产生以下结果:

sql n 结果

在此处输入图像描述

我想将我的 video_id 重新映射为“video26”之类的字符串。

如何将video_id与静态字符串连接?