簡體   English   中英

如何將數據從 CTE 插入臨時表?

[英]How to insert data from CTE to a Temp Table?

我正在嘗試使用 CTE 創建一些邏輯,然后在 CTE 之后不使用 DML 語句,而是嘗試使用 CTE 創建一個臨時表。 這在 T-SQL 中是可能的。 在 GBQ 中可以嗎?

我知道我可以在下面的示例中創建臨時表而不是 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 中沒有腳本或 session 將不再有效:

您可以按如下方式編寫查詢:

WITH xyz AS (
  SELECT 
    * 
  FROM table1
)  
SELECT 
  * 
FROM xyz 
INNER JOIN table2 
        ON ...

然后點擊更多按鈕->查詢設置,如下圖:
在此處輸入圖像描述

之后你可以為你的結果設置一個臨時表的目的地,在這里你可以定義你的表的名稱等。在你的情況下它是temp1

在此處輸入圖像描述

這樣您就可以將查詢結果保存到一個臨時表中。 希望能幫助到你!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM