有没有办法通过以下方式在谷歌BigQuery中创建临时表:
SELECT * INTO <temp table>
FROM <table name> 和我们可以在SQL中创建的一样吗?
对于复杂的查询,我需要创建临时表来存储数据。
发布于 2018-05-08 14:47:12
2018更新-使用DDL的明确答案
有了BigQuery的DDL支持,您可以从查询结果创建表,并在创建时指定其过期时间。例如,对于3天:
#standardSQL
CREATE TABLE `fh-bigquery.public_dump.vtemp`
OPTIONS(
expiration_timestamp=TIMESTAMP_ADD(CURRENT_TIMESTAMP(), INTERVAL 3 DAY)
) AS
SELECT corpus, COUNT(*) c
FROM `bigquery-public-data.samples.shakespeare`
GROUP BY corpushttps://cloud.google.com/bigquery/docs/data-definition-language
发布于 2013-12-19 14:05:36
发布于 2016-07-01 23:54:43
可以在"New Standard SQL"中使用WITH创建临时表。参见WITH clause。
谷歌给出了一个例子:
WITH subQ1 AS (SELECT SchoolID FROM Roster),
subQ2 AS (SELECT OpponentID FROM PlayerStats)
SELECT * FROM subQ1
UNION ALL
SELECT * FROM subQ2;https://stackoverflow.com/questions/20673986
复制相似问题