Выбор (реляционная алгебра)
В реляционной алгебре выбор ограничением (иногда называемый ) в связи с статьей Э. Ф. Кодда 1970 г. [1] а не , вопреки распространенному мнению, во избежание путаницы с использованием SQL оператора SELECT, поскольку статья Кодда появилась еще до появления SQL) — это унарная операция , обозначающая подмножество отношения.
Выбор записывается как или где:
- a и b — имена атрибутов
- θ — бинарная операция в множестве
- v — константа значения
- R — это отношение
Выбор обозначает все кортежи в R, для которых θ выполняется между атрибутами a и b .
Выбор обозначает все кортежи в R, для которых θ выполняется между атрибутом a и значением v .
В качестве примера рассмотрим следующие таблицы, где первая таблица дает отношение Person , вторая таблица дает результат и третья таблица дает результат .
|
|
|
Более формально семантика выбора определяется какследует:
Результат выбора определяется только в том случае, если имена атрибутов, которые он упоминает, находятся в заголовке отношения, над которым он работает.
Обобщенный выбор
[ редактировать ]Обобщенный выбор — это унарная операция, записываемая как где - это пропозициональная формула , состоящая из атомов , разрешенных при нормальном выборе, и, кроме того, логических операторов ∧ ( и ), ∨ ( или ) и ( отрицание ). Этот выбор выбирает все те кортежи в R, для которых держит.
В качестве примера рассмотрим следующие таблицы, где первая таблица дает отношение Person , а вторая — результат .
|
|
Формально семантика обобщенного отбора определяется следующим образом:
Результат выбора определяется только в том случае, если имена атрибутов , которые он упоминает, находятся в заголовке отношения, с которым он работает.
Обобщенный выбор выражается с помощью других основных алгебраических операций. Моделирование обобщенного выбора с использованием фундаментальных операторов определяется следующими правилами:
Компьютерные языки
[ редактировать ]В компьютерных языках ожидается, что любое истинное выражение будет разрешено в качестве условия выбора, а не будет ограничиваться простым сравнением.
В SQL выбор осуществляется с помощью WHERE
определения в SELECT
, UPDATE
, и DELETE
утверждения, но обратите внимание, что условие выбора может привести к любому из трех значений истинности ( истина , ложь и неизвестное ) вместо обычных двух.
В SQL общий выбор выполняется с помощью WHERE
определения с AND
, OR
, или NOT
операнды в SELECT
, UPDATE
, и DELETE
заявления.
Ссылки
[ редактировать ]- ^ Кодд, Э.Ф. (июнь 1970 г.). «Реляционная модель данных для больших общих банков данных» . Коммуникации АКМ . 13 (6): 377–387. дои : 10.1145/362384.362685 .