Provided by: manpages-zh_1.6.3.2-1_all bug

NAME

       CREATE TABLE AS - 從一條查詢的結果中創建一個新表

SYNOPSIS

       CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } ] TABLE table_name [ (column_name [, ...] ) ]
           AS query

DESCRIPTION 描述

       CREATE  TABLE  AS  創建一個表並且用來自  SELECT  命令計算出來的數據填充該表。 該表的字段和
       SELECT    輸出字段的名字及類型相關。    (只不過你可以通過明確地給出一個字段名字列表來覆蓋
       SELECT 的字段名)。

       CREATE  TABLE AS 和創建視圖有點象, 不過兩者之間實在是有比較大差異:它創建一個新表並且只對
       SELECT     計算一次來填充這個新表。     新表不能跟蹤      SELECT      的源表隨後做的變化。
       相比之下,每次做查詢的時候,視圖都重新計算定義它的 SELECT 語句。

PARAMETERS 參數

       TEMPORARY or TEMP
               如果聲明瞭這個選項,則該表作爲臨時表創建。  參閱  CREATE  TABLE  [create_table(7)]
              獲取細節。

       table_name
               要創建的表名(可以是用模式修飾的)。

       column_name
               字段的名稱。如果沒有提供字段名字,那麼就從查詢的輸出字段名中獲取。    如果表是一個
              EXECUTE 命令創建的, 那麼當前就不能聲明字段名列表。

       query
               一個查詢語句(也就是一條  SELECT  命令或者一條運行準備好的  SELECT  命令的 EXECUTE
              命令),請分別參考     SELECT     [select(7)]     或者     EXECUTE     [execute(l)]
              獲取可以使用的語法的描述。

NOTES 注意

        這條命令從功能上等效於             SELECT             INTO             [select_into(7)],
       但是我們更建議你用這個命令,因爲它不太可能和 SELECT ... INTO 語法的其它方面的使用混淆。

COMPATIBILITY 兼容性

        這條命令是根據  Oracle  的一個特性製作的。  在  SQL  標準中沒有功能相等的命令。不過,  把
       CREATE TABLE 和 INSERT ... SELECT  組合起來可以通過略微多一些的工作完成同樣的事情。

SEE ALSO 參見

       CREATE TABLE [create_table(7)], CREATE VIEW [create_view(l)], EXECUTE [execute(l)], SELECT
       [select(l)], SELECT INTO [select_into(l)]

譯者

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

       本頁面中文版由中文 man 手冊頁計劃提供。
       中文 man 手冊頁計劃:https://github.com/man-pages-zh/manpages-zh