Provided by:
manpages-zh_1.5-1_all 
NAME
CREATE TABLE AS - 從一條查詢的結果中創建一虓s表
SYNOPSIS
CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } ] TABLE table_name [ (column_name [, ...] ) ]
AS query
DESCRIPTIONyz
CREATE TABLE AS 創建一茠磻疇B用來自 SELECT 命令p算出來的數據填充該表。
該表的字段和 SELECT 輸出字段的名字及類型相關。
(只不過你可以通過明確地給出一茼r段名字列表來覆蓋 SELECT 的字段名)。
CREATE TABLE AS 和創建視圖有點像,
不過兩者之間實在是有比較大差異:它創建一虓s表並且只對 SELECT
p算一次來填充這虓s表。 新表不能跟蹤 SELECT 的源表隨後做的變化。
相比之下,每次做查詢的時唌A視圖都奐sp算定義它的 SELECT 語句。
PARAMETERS數
TEMPORARY or TEMP
如果聲明了這蚇龠窗A則該表作為臨時表創建。 參閱 CREATE TABLE
[create_table(7)] 獲取細節。
table_name
n創建的表名(可以是用模式袡◥滿^。
column_name
字段的名稱。如果沒有提供字段名字,那麼就從查詢的輸出字段名中獲取。
如果表是一 EXECUTE 命令創建的, 那麼當前就不能聲明字段名列表。
query 一茯d詢語句(也就是一條 SELECT 命令或者一條運行準備好的 SELECT
命令的 EXECUTE 命令),請分別參考 SELECT [select(7)] 或者
EXECUTE [execute(l)] 獲取可以使用的語法的描z。
NOTES`N
這條命令從功能上等效於 SELECT INTO [select_into(7)], 但是我-
怬颿媊釦A用這茤R令,因為它不太可能和 SELECT ... INTO 語法的其它方-
悸漕洏帣V淆。
COMPATIBILITYe性
這條命令是根據 Oracle 的一荅S性製作的。 在 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>