Типы данных, поддерживаемые SQL Server 7.0. Ранимые процедуры и команды Transact SQL используемые при администрировании SQL Server (Основные), страница 6

CREATE TABLE
[
database_name.[owner].
| owner.
] table_name
(
{ <определение_столбца>
| имя_столбца AS вычисляемое выражение
| < ограничение_таблицы>
} [,...n]
)
[ON {filegroup | DEFAULT} ]
[TEXTIMAGE_ON {filegroup | DEFAULT} ]

<column_definition> ::= {имя_столбца тип_данных }
[ [ DEFAULT  значение_по_умолчанию ]
| [ IDENTITY [(seed, increment ) [NOT FOR REPLICATION] ] ]
]
[ ROWGUIDCOL ]
[ <ограничение_столбца >] [ ...n]

<ограничение_столбца> ::= [CONSTRAINT имя_ограничения]
{
[ NULL | NOT NULL ]
| [ { PRIMARY KEY | UNIQUE }
[CLUSTERED | NONCLUSTERED]
[WITH FILLFACTOR = %заполнения]
[ON {filegroup | DEFAULT} ]]
]
| [ [FOREIGN KEY]
REFERENCES  имя_таблицы [(имя_колонки) ]
[NOT FOR REPLICATION]
]
| CHECK [NOT FOR REPLICATION]
(логическое_выражение)
}

<ограничение_таблицы> ::= [CONSTRAINT имя_ограничения]
{
[ { PRIMARY KEY | UNIQUE }
[ CLUSTERED | NONCLUSTERED]
{ ( имя_столбца[,...n] ) }
[ WITH FILLFACTOR = %заполнения]
[ON {filegroup | DEFAULT} ]
]
| FOREIGN KEY
[(имя_столбц[,...n])]
REFERENCES имя_таблицы [(имя_столбца[,...n])]
[NOT FOR REPLICATION]
| CHECK [NOT FOR REPLICATION]
(логическое_выражение)
}

Оператор изменения  таблицы

ALTER TABLE table
{ [ALTER COLUMN column_name
{ new_data_type [ (precision[, scale] ) ]
[ NULL | NOT NULL ]
| {ADD | DROP} ROWGUIDCOL
}
]
| ADD
{ [ <column_definition> ]
| column_name AS computed_column_expression
}[,...n]
| [WITH CHECK | WITH NOCHECK] ADD
{ <table_constraint> }[,...n]
| DROP
{ [CONSTRAINT] constraint_name
| COLUMN column
}[,...n]
| {CHECK | NOCHECK} CONSTRAINT
{ALL | constraint_name[,...n]}
| {ENABLE | DISABLE} TRIGGER
{ALL | trigger_name[,...n]}
}

<column_definition> ::= { column_name data_type }
[ [ DEFAULT constant_expression ]
| [ IDENTITY [(seed, increment ) [NOT FOR REPLICATION] ] ]
]
[ ROWGUIDCOL ]
[ <column_constraint>] [ ...n]

<column_constraint> ::= [CONSTRAINT constraint_name]
{
[ NULL | NOT NULL ]
| [ { PRIMARY KEY | UNIQUE }
[CLUSTERED | NONCLUSTERED]
[WITH FILLFACTOR = fillfactor]
[ON {filegroup | DEFAULT} ]]
]
| [ [FOREIGN KEY]
REFERENCES ref_table [(ref_column) ]
[NOT FOR REPLICATION]
]
| CHECK [NOT FOR REPLICATION]
(logical_expression)
}

<table_constraint> ::= [CONSTRAINT constraint_name]
{ [ { PRIMARY KEY | UNIQUE }
[ CLUSTERED | NONCLUSTERED]
{ ( column[,...n] ) }
[ WITH FILLFACTOR = fillfactor]
[ON {filegroup | DEFAULT} ]
]
| FOREIGN KEY
[(column[,...n])]
REFERENCES ref_table [(ref_column[,...n])]
[NOT FOR REPLICATION]
| DEFAULT constant_expression
[FOR column]
| CHECK [NOT FOR REPLICATION]
(logical_expression)
}

Расширенный оператор поиска

SELECT select_list

[INTO new_table_]
FROM table_source
[WHERE search_condition]
[GROUP BY group_by_expression]
[HAVING search_condition]
[ORDER BY order_expression [ASC | DESC] ]

Операция объединения UNION может быть использована только для запросов с эквивалентными схемами.

Syntax

SeSELE

Seseselect_statement ::=
<query_expression>
[ ORDER BY { order_by_expression | column_position [ ASC | DESC ] }
[,...n] ]
[ COMPUTE
{ { AVG | COUNT | MAX | MIN | SUM } (expression) } [,...n]
[ BY expression [,...n]]
]
[ FOR BROWSE ]
[ OPTION (<query_hint> [,...n]) ]

<query expression> ::=
{ <query specification> | (<query expression>) }
[UNION [ALL] <query specification | (<query expression>) [...n] ]

<query specification> ::=
SESSELECT [ ALL | DISTINCT ]
[ {TOP integer | TOP integer PERCENT} [ WITH TIES] ]
<select_list>
[ INTO new_table ]
[ FROM {<table_source>} [,...n] ]
[ WHERE <search_condition> ]
[ GROUP BY [ALL] group_by_expression [,...n]
[ WITH { CUBE | ROLLUP } ]
]
[ HAVING <search_condition> ]

Опция  FROM

[ FROM {<table_source>} [,...n] ]

<table_source> ::=
table_name [ [AS] table_alias ] [ WITH ( <table_hint> [,...n]) ]
| view_name [ [AS] table_alias ]
| rowset_function [ [AS] table_alias ]
| derived_table [AS] table_alias [ (column_alias [,...n] ) ]


| <joined_table>

<joined_table> ::=
<table_source> <join_type> <table_source> ON <search_condition>
| <table_source> CROSS JOIN <table_source>
| <joined_table>

<join_type> ::=
[ INNER | { { LEFT | RIGHT | FULL } [OUTER] } ]
[ <join_hint> ]
JOIN