Понимание SQL

Грубер Мартин

Жанр: Базы данных  Компьютеры и Интернет    Автор: Грубер Мартин   
Закладки
Размер шрифта
A   A+   A++
Cкачать
Читать

МАРТИН ГРУБЕР

Понимание 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>] .,.. );

Элементы, используемые в команде CREATE TABLE

ЭЛЕМЕНТ

ОПРЕДЕЛЕНИЕ

<table name>

Имя таблицы создаваемой этой командой.

<column name>

Имя столбца таблицы.

<data type>

Тип данных

Тип данных, который может содержаться в столбце.

Может быть любым из следующих:

INTEGER (ЦЕЛОЕ ЧИСЛО),

CHARACTER (СИМВОЛЬНОЕ),

DECIMAL (ДЕСЯТИЧНОЕ),

NUMERIC (ЧИСЛОВОЕ),

SMALLINT (НАИМЕНЬШЕЕ)

FLOAT (С ПЛАВАЮЩЕЙ ТОЧКОЙ)

REAL (РЕАЛЬНОЕ),

DOUBLE PRECISION (УДВОЕННАЯ ТОЧНОСТЬ С ПЛАВАЮЩЕЙ ТОЧКОЙ),

LONG * (ДЛИННОЕ *),

VARCHAR * (ПЕРЕМЕННОЕ СИМВОЛЬНОЕ *),

DATE * (ДАТА *),

TIME * (ВРЕМЯ *)

(* — указывает на нестандартный для SQL тип данных)

<size> Размер. Его значение зависит от <data type>.

<colconstrnt> Может быть любым из следующих:

NOT NULL (НЕ НУЛЕВОЙ),

UNIQUE (УНИКАЛЬНЫЙ),

PRIMARY KEY (ПЕРВИЧНЫЙ КЛЮЧ),

CHECK(<predicate>) (ПРОВЕРКА предиката),

DEFAULT = <value expression> (ПО УМОЛЧАНИЮ = значимому выражению)

Алфавит

Предложения

Copyrights and trademarks for the book, and other promotional materials are the property of their respective owners. Use of these materials are allowed under the fair use clause of the Copyright Law.