BigQuery SQL 高级应用与数组操作指南
1. 向查询传递结构体参数
在 BigQuery 中,可以通过构造结构体参数将结构体传递给查询,示例代码如下:
bigquery.StructQueryParameter(
"bicycle_trip",
bigquery.ScalarQueryParameter("start_station_id", "INT64", 62),
bigquery.ScalarQueryParameter("end_station_id", "INT64", 421)
)
需要注意的是,不能对表名、列名或查询本身的其他部分进行参数化。如果使用 --dry_run 运行参数化查询但未传入所需参数,响应将包含所有参数的推断类型。
2. SQL 用户定义函数(UDF)
2.1 临时 UDF
可以通过参数化整个查询来实现复用,还可以通过将 SQL 查询中的一组操作重构为用户定义函数(UDF),实现更细粒度的复用。例如,要查找按星期几统计的过夜租赁数量(过夜租赁指开始时间戳和结束时间戳落在不同日期的租赁),可以定义临时 SQL UDF:
CREATE TEMPORARY FUNCTION dayOfWeek(x TIMESTAMP) AS
(
['Sun','Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
[ORDINAL(EX
BigQuery SQL高级应用与数组操作
超级会员免费看
订阅专栏 解锁全文
59

被折叠的 条评论
为什么被折叠?



