Google bigquery 如何将BigQuery表的每一行重复多次?
我想将BigQuery表中的每一行重复10次(这样我就可以看到如果我的表变大10倍,查询将如何执行)。如何执行此操作?使用数组和交叉联接:Google bigquery 如何将BigQuery表的每一行重复多次?,google-bigquery,Google Bigquery,我想将BigQuery表中的每一行重复10次(这样我就可以看到如果我的表变大10倍,查询将如何执行)。如何执行此操作?使用数组和交叉联接: CREATE OR REPLACE TABLE ds.larger_table AS WITH orig AS ( SELECT * FROM ds.small_table ) SELECT orig.* FROM orig, UNNEST(GENERATE_ARRAY(1, 10)) AS repeat_number 如果原始表已分区
CREATE OR REPLACE TABLE ds.larger_table AS
WITH orig AS (
SELECT * FROM ds.small_table
)
SELECT orig.*
FROM
orig,
UNNEST(GENERATE_ARRAY(1, 10)) AS repeat_number
如果原始表已分区和/或群集,请确保也对较大的表进行分区。答案比Lak的短,因为:
SELECT orig.*
FROM orig, UNNEST(GENERATE_ARRAY(1, 10))
这是:
- 不要使用
而使用*
来避免执行orig.*
EXCEPT()
- 然后,
就不需要命名UNNEST
repeat\u编号