Синтаксисът на оператора Create Table As SQL е:
CREATE TABLE table_name [ ( column_name [, ...] ) ] AS select [ * ! ( column_name [, ...] ) ] FROM source_table_name
Заменете table_name с името на новата таблица, която ще бъде създадена. Името на колоната е по избор, където можете да посочите няколко колони, като включите имената им в списък, разделен със запетая. В противен случай структурата на новата таблица ще се основава на имената на колоните, типовете и броя на колоните, върнати от оператора Select, заедно с данните за редовете. Ако посочите името на колоната, имайте предвид, че трябва да има същия брой посочени колони, както се връщат от select.
Инструкцията select в края на командата create table as трябва да е валидна и да има избрани цели, съответстващи на броя на колоните в списъка с колони по избор, предхождащ клаузата AS. Това може да бъде сложен оператор за избор, който извлича данни от множество таблици. Ако списъкът с колони по избор е посочен в скоби, звездичка (*) вече не може да се използва в оператора select.
Например,
CREATE TABLE demo_backup AS SELECT * FROM demo;
По-горе SQL израз ще създаде точна копия на таблица за архивиране с име demo_backup с данни и структура (колони) на демонстрационната таблица.
Възможна грешка, ако посочите списъка с колони по избор, е:
ГРЕШКА:CREATE TABLE/AS SELECT има несъответстващ брой колони
Ако срещнете това съобщение за грешка, това се дължи на това, че незадължителният списък с колони в скоби съдържа различен брой редове от този, който връща операторът select. Проверете два пъти дали посоченият брой колони е същият с резултатите, които се очакват от избрания набор от резултати.
Забележка:Някои системи за бази данни поддържат синтаксис CREATE TABLE ... LIKE, който създава празна таблица въз основа на дефиницията на друга таблица, включително всички атрибути на колона и индекси, дефинирани в оригиналната таблица. Разликата е, че синтаксисът CREATE TABLE ... SELECT също копира данните.