Provided by: manpages-zh_1.5.2-1.1_all bug

NAME

       SELECT INTO - 從一個查詢的結果中創建一個新表

SYNOPSIS

       SELECT [ ALL | DISTINCT [ ON ( expression [, ...] ) ] ]
           * | expression [ AS output_name ] [, ...]
           INTO [ TEMPORARY | TEMP ] [ TABLE ] new_table
           [ FROM from_item [, ...] ]
           [ WHERE condition ]
           [ GROUP BY expression [, ...] ]
           [ HAVING condition [, ...] ]
           [ { UNION | INTERSECT | EXCEPT } [ ALL ] select ]
           [ ORDER BY expression [ ASC | DESC | USING operator ] [, ...] ]
           [ LIMIT { count | ALL } ]
           [ OFFSET start ]
           [ FOR UPDATE [ OF tablename [, ...] ] ]

DESCRIPTION 描述

       SELECT   INTO   從一個查詢的計算結果中創建一個新表。  數據並不返回給客戶端,這一點和普通的
       SELECT 不同。 新表的字段具有和 SELECT 的輸出字段相關聯(相同)的名字和數據類型。

PARAMETERS 參數

       TEMPORARY  TEMP
               如果聲明了這個關鍵字,那麼該表是作為一個臨時表創建的。   請參考    CREATE    TABLE
              [create_table(7)] 獲取細節。

       new_table
               要創建的表的表名(可以有模式修飾)。

        所有其它輸入的域都在 SELECT [select(7)] 中有詳細描述。

NOTES 注意

       CREATE TABLE AS [create_table_as(7)] 的作用和 SELECT INTO 相同。 我們建議使用 CREATE TABLE
       AS 語法, 因為 SELECT INTO 不是標準語法。 實際上,這種類型的 SELECT INTO 是不能在 ECPG  或
       者 PL/pgSQL 中使用的, 因為它們對 INTO 子句的解釋是不同的。

COMPATIBILITY 相容性

        SQL  標準用  SELECT  ...  INTO  表示選取數值到一個宿主程式的標量變量中, 而不是創建一個新
       表。這種用法實際上就是在 ECPG  (參閱  Chapter  29)和PL/pgSQL   (Chapter  35)裏的用途。
       PostgreSQL 用 SELECT INTO 代表創建表的意思是歷史原因。 在新代碼裏我們最好使用 CREATE TABLE
       AS 實現這個目地。 (CREATE TABLE AS 也不是標準,但至少它出現混淆的機會少一些。)

譯者

       Postgresql 中文網站 何偉平 <laser@pgsqldb.org>