SQL: Правила выполнения однотабличных запросов

Правила выполнения  запросов SQL

Однотабличные запросы в большинстве своем являются простыми, и смысл та­кого запроса обычно можно легко понять, просто прочитав инструкцию SELECT. Однако по мере возрастания сложности запроса появляется необходимость в более точном "определении" результатов, которые будут возвращены данной инструк­цией SELECT. Ниже описана процедура генерации результатов SQL-запроса, включающего в себя предложения, описанные в предыдущих постах.

Предыдущие статьи:

  1. Простейщие запросы SQL: оператор SELECT
  2. Вычисления в SQL запросах Select
  3. Выборка всех данных из таблицы
  4. SELECT DISTINCT - выборка уникальных значений
  5. WHERE: отбор по условию в операторе SELECT
  6. ORDER BY: сортировка в операторе SELECT

Как видно из описания, результаты запроса, возвращенные инструкцией SELECT, получаются при поочередном применении входящих в инструкцию предложений. Вначале применяется предложение FROM (выбирает таблицу, со­держащую гребуемые данные), затем — WHERE (по определенному критерию от­бирает из таблицы строки), далее — SELECT (создает указанные столбцы результа­тов запроса и при необходимости удаляет повторяющиеся строки) и, наконец, ORDER by (сортирует результаты запроса).

Итак, при генерации результатов запроса к одной таблице выполняются сле­дующие действия.

  1. Взять таблицу, указанную в предложении from.
  2. Если имеется предложение WHERE, применить заданное в нем условие от­бора к каждой строке таблицы и оставить только те строки, для которых это условие выполняется, т.е. имеет значение TRUE; строки, для которых условие отбора имеет значение FALSE или null, — отбросить.
  3. Для каждой из оставшихся строк вычислить значение каждого элемента в списке возвращаемых столбцов и создать одну строку таблицы результа­тов запроса. При каждой ссылке на столбец используется значение столбца для текущей строки.
  4. Если указано ключевое слово DISTINCT, удалить из таблицы результатов запроса все повторяющиеся строки.
  5. Если имеется предложение ORDER BY, отсортировать результаты запроса. Строки, сгенерированные описанной процедурой, составляют результаты запроса.

Эти "правила" обработки запросов SQL в следующих статьях будут неодно­кратно расширены, чтобы охватить остальные предложения инструкции SELECT.

Вас заинтересует / Intresting for you:

Значения NULL в языке SQL: отс...
Значения NULL в языке SQL: отс... 775 просмотров Antoni Mon, 21 Jun 2021, 19:57:18
Оператор SQL SELECT: введение ...
Оператор SQL SELECT: введение ... 1448 просмотров Боба Thu, 24 Jun 2021, 18:58:21
Управление приложениями PL/SQL...
Управление приложениями PL/SQL... 3739 просмотров Stas Belkov Thu, 16 Jul 2020, 06:20:48
Встроенные методы коллекций PL...
Встроенные методы коллекций PL... 9395 просмотров sepia Tue, 29 Oct 2019, 09:54:01
Войдите чтобы комментировать

Обсудить эту статью

INFO: Вы отправляете сообщение как 'Гость'