Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции_Банки и базы данных.doc
Скачиваний:
49
Добавлен:
25.09.2019
Размер:
656.9 Кб
Скачать

13.1.2. Синтаксическая диаграмма оператора select

Синтаксическая диаграмма оператора, показанная на рисунке 13.1, представляет собой описание его конструкции, дает представление о том, какие элементы могут содержаться в операторе и в каком порядке они могут следовать друг за другом.

Как видно из рисунка 13.1, оператор SELECT может состоять из шести предложений, только два из которых являются обязательными (SELECT и FROM). Необязательные предложения следует записывать в том порядке, как указано на рисунке 13.1: WHERE, GROUP BY, HAVING, ORDER BY.

Предложение SELECT содержит список возвращаемых столбцов.

Предложение FROM содержит список источников данных, необходимых для получения конечного результата.

Предложение WHERE служит для отбора строк из указанных в предложении FROM источников, удовлетворяющих заданному условию.

Предложение GROUP BY позволяет сформировать из строк группы по одинаковым значениям в указанных столбцах группировки. Группировка строк используется в итоговых запросах (будут рассмотрены позже).

Предложение HAVING служит для отбора групп строк, сформированных предложением GROUP BY.

Предложение ORDER BY позволяет отсортировать результаты запроса.

Примечание. Очень часто в различных предложениях оператора SELECT могут использоваться так называемые выражения. В качестве выражения могут выступать имена столбцов таблиц, константы, а также их комбинации с математическими действиями.

13.2. Обязательные предложения оператора select

К обязательным предложениям относятся предложения SELECT и FROM. Они присутствуют в любом запросе на выбор данных. После составления этих предложений оператор можно завершить, однако, как правило, в запросах SELECT содержатся также и необязательные предложения.

Рис. 13.1. Синтаксическая диаграмма оператора SELECT

13.2.1. Предложение select.

В предложении SELECT указываются столбцы таблицы результатов запроса. Из синтаксической диаграммы следует, что сразу после слова SELECT может быть указано одно из ключевых слов – ALL (действует по умолчанию) или DISTINCT. Если указано слово DISTINCT, то из таблицы результатов запроса будут удалены все копии абсолютно одинаковых строк, кроме одной. В случае если указано слово ALL, то копии строк удаться не будут.

Далее в предложении SELECT следует список возвращаемых столбцов, которые перечисляются через запятую. В качестве возвращаемого столбца может фигурировать реальный столбец таблицы, константа, выражение, символ «*» (звездочка) или агрегатная функция (агрегатные функции будут рассмотрены позже).

Символ «*» означает, что в таблицу результатов запроса будут включены все столбцы из всех источников данных, указанных в предложении FROM (в порядке их определения в операторе CREATE TABLE).

Каждому возвращаемому столбцу можно задать другое имя – псевдоним:

<возвращаемый столбец> [AS] <псевдоним>.

13.2.2. Предложение from.

В предложении FROM указываются источники данных для получения результата запроса, перечисленные через запятую. В качестве источника данных может быть указано имя таблицы/запроса базы данных или (в круглых скобках) другой запрос SELECT (так называемый вложенный запрос; вложенные запросы будут рассмотрены позже).