МАРТИН ГРУБЕР
Понимание SQL
Перевод Лебедева В. Н.
Под редакцией Булычева В. Н.
МОСКВА, 1993
MARTIN GRUBER
Understanding SQL
Команда SELECT
SELECT * | { [ DISTINCT | ALL] <value expression>. ,. . }
FROM { <table name> [ <alias> ] }. ,. .
[ WHERE <predicate>]
[ GROUP BY { <column name> | <integer> }. ,. . ]
[ HAVING <predicate>]
[ ORDERBY { <column name> | <integer> }. ,. . ]
[ { UNION [ALL]
SELECT * | { [DISTINCT | ALL] < value expression >. ,. . }
FROM { <table name> [<alias>]} . ,. .
[ WHERE <predicate>
[ GROUP BY { <columnname> | <integer> }. ,. . ]
[ HAVING <predicate>]
[ ORDER BY { <columnname> | <integer> }. ,. . ] } ] ... ;
Элементы, используемые в команде SELECT
ЭЛЕМЕНТ | ОПРЕДЕЛЕНИЕ |
<value expression> | Выражение, которое производит значение. Оно может включать в себя или содержать <column name>. |
<table name> | Имя или синоним таблицы или представления |
<alias> | Временный синоним для <table name>, определеный в этой таблице и используемый только в этой команде |
<predicate> | Условие , которое может быть верным или неверным для каждой строки или комбинации строк таблицы в предложении FROM. |
<column name> | Имя столбца в таблице. |
<integer> | Число с десятичной точкой. В этом случае, оно показывает <value expression> в предложении SELECT с помощью идентификации его местоположения в этом предложении. |
Команды UPDATE, INSERT, DELETE
UPDATE
UPDATE <tablename>
SET { | }. ,. . < column name> = <value expresslon> [ WHERE <predlcate>
| WHERE CURRENT OF <cursor name> (*только для вложения*) ];
INSERT
INSERT INTO < table name> [(<column name> . ,. ]
{ VALUES ( <value expression> . ,. . ) } | <query>;
DELETE
DELETE FROM <table name>
[ WHERE <predicate>
| WHERE CURRENT OF <cursor name> (*только для вложения*) ];
ЭЛЕМЕНТ | ОПРЕДЕЛЕНИЕ |
<cursor name> | Имя курсора используемого в этой программе. |
<query> | Допустимая команда SELECT. |
Для других элементов смотри команду SELECT.
Символы Используемые в Синтаксисе Предлжения
СИМВОЛ | ОБЪЯСНЕНИЕ |
| | Любой предшествующий знаку (|) символ может быть произвольно заменен на любой следующий за (|). Это — символический способ высказывания "или" ("or"). |
{ } | Все, что включено в фигурные скобки обрабатывается как модуль с целью оценки |, . ,. . или других символов. |
[ ] | Все,включенное в квадратные скобки является необязательным |
... | Любое, предшествующее этому, может повторяться любое число раз. |
. ,. . | Любое, предшествующее этому, и в каждом случае отделенное |
запятыми, может повторяться любое число раз.
Команда CREATE TABLE
CREATE TABLE <table name>
( { <column name> <data type> | <size>]
[<colcnstrnt> ... ]} . ,. . );
[<tabconstrnt>] . ,. . );