Предложения select и from

  • Часть 1
  • | 2
  • | 3
  • | 4
  • | 5
  • | 6
  • | 7
  • | 8

На логическом уровне запрос выполняется путем построчного просмотра таблицы, указанной в предложении FROM. Для каждой строки таблицы берутся значения столбцов, входящих в список возвращаемых элементов, и создается одна строка ТРЗ. Таким образом, таблица результатов простого запроса на чтение, подобного приведенному выше, содержит одну строку данных для каждой строки исходной таблицы БД.

В общем случае предложение FROM состоит из ключевого слова FROM, за которым следует список спецификаторов объектов БД, разделенных запятыми. Каждый спецификатор идентифицирует объект БД (базовая таблица, представление), содержащий данные, которые считывает запрос. Такие объекты называются исходными объектами запроса (и запроса SELECT), поскольку все данные, содержащиеся в ТРЗ, берутся из них. В случае однотабличных запросов в предложении FROM указывается только один исходный объект.

Рассмотрим пример запроса, когда в качестве возвращаемых элементов перечислены имена столбцов базовой таблицы.

Пусть активной является учебная БД. Чтобы вывести номера лицевых счетов, фамилии и телефоны всех абонентов, необходимо выполнить следующий запрос к таблице Abonent:

SELECT AccountCD, Fio, Phone FROM Abonent;.

Здесь в качестве возвращаемых элементов используются имена столбцов AccountCD, Fio, Phone базовой таблицы Abonent.

Имя таблицы можно переопределять, чтобы для ссылок на нее использовать короткий (чаще всего ограничивающийся одной буквой) псевдоним (alias), например в следующм виде:

SELECT A.AccountCD, A.Fio, A.Phone FROM Abonent A;.

Результат выполнения двух предыдущих запросов представлен на рис. 3.2.

ACCOUNTCD

FIO

PHONE

005488

АКСЕНОВ С.А.

556893

115705

МИЩЕНКО Е.В.

769975

015527

КОНЮХОВ В.С.

761699

443690

ТУЛУПОВА М.И.

214833

136159

СВИРИНА З.А.

350003

443069

СТАРОДУБЦЕВ Е.В.

683014

136160

ШМАКОВ С.В.

982222

126112

МАРКОВА В.П.

683301

136169

ДЕНИСОВА Е.К.

680305

080613

ЛУКАШИНА Р.М.

254417

080047

ШУБИНА Т.П.

257842

080270

ТИМОШКИНА Н.Г.

321002

Рис. 3.2. Результат выполнения запроса к таблице Abonent

предыдущаяследующая