如何将数据从 CTE 插入到 Temp Table?
How to insert data from CTE to a Temp Table?
我正在尝试使用 CTE 创建一些逻辑,然后在 CTE 之后不使用 DML 语句,而是尝试使用 CTE 创建临时 table。这在 T-SQL 中是可能的。 GBQ可以吗?
我知道我可以在下面的示例中创建临时 table 而不是 CTE,但只是想知道这种可能性!
WITH xyz AS
(SELECT * FROM table1)
CREATE TEMP TABLE temp1 AS (
SELECT * FROM xyz INNER JOIN table2 on ...);
改用下面的方法
CREATE TEMP TABLE temp1 AS (
WITH xyz AS
(SELECT * FROM table1)
SELECT * FROM xyz INNER JOIN table2 on ...
);
所以在 2022 年,我相信在 GBQ 中没有脚本或会话将不再有效:
您可以按如下方式编写查询:
WITH xyz AS (
SELECT
*
FROM table1
)
SELECT
*
FROM xyz
INNER JOIN table2
ON ...
然后点击更多按钮->查询设置,如下图:
之后你可以为你的结果设置一个临时的目的地 table 并且你可以在这里定义你的 table 等的名称。在你的情况下它是 temp1
:
这样您就可以将查询结果保存到一个临时文件中 table。希望对您有所帮助!
我正在尝试使用 CTE 创建一些逻辑,然后在 CTE 之后不使用 DML 语句,而是尝试使用 CTE 创建临时 table。这在 T-SQL 中是可能的。 GBQ可以吗?
我知道我可以在下面的示例中创建临时 table 而不是 CTE,但只是想知道这种可能性!
WITH xyz AS
(SELECT * FROM table1)
CREATE TEMP TABLE temp1 AS (
SELECT * FROM xyz INNER JOIN table2 on ...);
改用下面的方法
CREATE TEMP TABLE temp1 AS (
WITH xyz AS
(SELECT * FROM table1)
SELECT * FROM xyz INNER JOIN table2 on ...
);
所以在 2022 年,我相信在 GBQ 中没有脚本或会话将不再有效:
您可以按如下方式编写查询:
WITH xyz AS (
SELECT
*
FROM table1
)
SELECT
*
FROM xyz
INNER JOIN table2
ON ...
然后点击更多按钮->查询设置,如下图:
之后你可以为你的结果设置一个临时的目的地 table 并且你可以在这里定义你的 table 等的名称。在你的情况下它是 temp1
:
这样您就可以将查询结果保存到一个临时文件中 table。希望对您有所帮助!