将 table_date_range 翻译成 table_suffix 无效,因为响应太大
Translation table_date_range to table_suffix does not work because response is too large
我在 BigQuery Legacy SQL 中有以下查询。到目前为止,此查询 运行s 没有问题。
#legacySQL
SELECT
Var1 AS Var1,
Var2 AS Var2,
Var3 AS Var3,
Var4 AS Var4,
FROM
TABLE_DATE_RANGE([xxx.yyy_], DATE_ADD(CURRENT_TIMESTAMP(), -33, 'DAY'), DATE_ADD(CURRENT_TIMESTAMP(), -1, 'DAY'))
在我们想要将所有查询逐步迁移到 StandardSQL 之后,新查询已在 StandardSQL 中编写如下。
#standardSQL
SELECT
Var1 AS Var1,
Var2 AS Var2,
Var3 AS Var3,
Var4 AS Var4,
FROM
`xxx.yyy_20*`
WHERE
parse_date('%y%m%d', _table_suffix) between DATE_ADD(CURRENT_DATE(), INTERVAL -33 DAY) AND DATE_ADD(CURRENT_DATE(), INTERVAL -1 DAY)
但是,此查询不再 运行,而带有 LegacySQL 的变体工作正常。我收到以下错误消息:错误:对 return 的响应太大。考虑在作业配置中将 allowLargeResults 设置为 true。
带有 _table_suffix 的变体的性能会差很多吗?或者有其他选择吗?我使用 Table_Date_Range 查询大约 400 tables.
我想将结果保存为视图,而不必通过 "AllowLargeResults".
将它们写入 table
非常感谢!
创建视图应该没有问题。但是,当您查询视图时,您要么需要 select 特定日期,要么将结果写入 table.
我在 BigQuery Legacy SQL 中有以下查询。到目前为止,此查询 运行s 没有问题。
#legacySQL
SELECT
Var1 AS Var1,
Var2 AS Var2,
Var3 AS Var3,
Var4 AS Var4,
FROM
TABLE_DATE_RANGE([xxx.yyy_], DATE_ADD(CURRENT_TIMESTAMP(), -33, 'DAY'), DATE_ADD(CURRENT_TIMESTAMP(), -1, 'DAY'))
在我们想要将所有查询逐步迁移到 StandardSQL 之后,新查询已在 StandardSQL 中编写如下。
#standardSQL
SELECT
Var1 AS Var1,
Var2 AS Var2,
Var3 AS Var3,
Var4 AS Var4,
FROM
`xxx.yyy_20*`
WHERE
parse_date('%y%m%d', _table_suffix) between DATE_ADD(CURRENT_DATE(), INTERVAL -33 DAY) AND DATE_ADD(CURRENT_DATE(), INTERVAL -1 DAY)
但是,此查询不再 运行,而带有 LegacySQL 的变体工作正常。我收到以下错误消息:错误:对 return 的响应太大。考虑在作业配置中将 allowLargeResults 设置为 true。
带有 _table_suffix 的变体的性能会差很多吗?或者有其他选择吗?我使用 Table_Date_Range 查询大约 400 tables.
我想将结果保存为视图,而不必通过 "AllowLargeResults".
将它们写入 table非常感谢!
创建视图应该没有问题。但是,当您查询视图时,您要么需要 select 特定日期,要么将结果写入 table.