Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Неделя 05 Лекция 2 (8).doc
Скачиваний:
1
Добавлен:
13.11.2019
Размер:
179.71 Кб
Скачать

8.2.2. Формат оператора select.

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

Оператор SELECT - средство, которое полностью абстрагировано от вопросов представления данных; все внимание при его применении сконцентрировано на проблемах доступа к данным.

Оператор SELECT имеет следующий формат:

SELECT [DISTINCT | ALL] {* | <значение1> [, <значение2> ...]}

FROM <таблица1> [, < таблица2> ...]

[WHERE <условия_поиска>]

[GROUP BY столбец [COLLATE collation}

[,столбец! [COLLATE collation] ...]

[HAVING < условия_поиска >]

[UNION <onepaTop_select>]

[PLAN <план_ выполнения_запроса>]

[ORDER BY <список_столбцов>]

Этот формат с первого взгляда достаточно громоздок и поэтому кажется сложным. Такое впечатление при дальнейшем изучении оператора SELECT наверняка покажется Вам неверным. Поэтапно рассмотрим возможности, которые предоставляет оператор SELECT.

8.2.3. Простейший вид оператора select (select…from).

В простейшем случае оператор SELECT имеет вид:

SELECT {* | <значение1> [, <значение2> ...]}

FROM <таблица1> [, < таблица2> ...]

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

С точки зрения реляционной алгебры данный оператор выполняет операции проекции (см. предыдущую лекцию).

После ключевого слова SELECT приводится список значений. Каждое из них определяет столбец результирующего набора данных, возвращаемого оператором SELECT. В большинстве случаев это имена столбцов таблиц, перечисленных после слова FROM. Звездочка '*' указывает, что в результат выполнения запроса нужно включить все столбцы той или иной таблицы.

ПРИМЕР

Выдать набор данных из всех атрибутов и всех кортежей отношения Readers.

SELECT *

FROM Readers

Что эквивалентно

SELECT Code, FamilyName, Name, Patronymic, ReaderCardNumber,

PasportCode, Job, Post, Note

FROM Readers

Таблица 8.1.

Результат выполнения запроса SELECT * FROM Readers.

Code

FamilyNamе

Name

Patronymic

ReaderCardNumber

PasportCode

Job

Post

Note

1

Иванов

Петр

Иванович

317

4

ДГУ, каф. ЭВТ

Ассистент

blob

2

Федорец

Ирина

Олеговна

28

1

ДГУ, АХЧ

Вахтер

blob

3

Ильин

Иван

Петрович

1345

11

ДГУ, каф. физики

Доцент

blob

4

Суренко

Дмитрий

Павлович

543

6

ДГУ, каф. геофизики

Ст. преподава-тель

blob

5

Коршунова

Наталья

Юрьевна

128

8

ДГУ, каф.гео-информа-тики

Ассистент

blob

6

Носенко

Олег

Владими-рович

5672

5

ДГУ, ИКК

Инженер

blob