Основы SQL


ПРЕДИКАТЫ


Здесь определён список различных типов предиката <predicate>, описанных на следующих страницах:

<predicate> ::= [NOT]

{ <comparison predicate> | <in predicate> | <null predicate> | <between predicate> | <like predicate> | <quantified predicate> | <exists predicate> } [ANDI OR <predicate> ]

<predicate> - это выражение, которое может быть true, false или неизвестным, за исключением

<exists predicate> и <null predicate>, которые могут быть только верными или неверными.

Будет получено "неизвестно", если NULL-значения предотвращают вывод полученного ответа. Это будет случаться всякий раз, когда NULL-значение сравнивается с любым значением. Стандартные булевы операторы - AND, OR и NOT - могут использоваться с предикатом. NOT true = false, NOT false = true, а NOT неизвестно = неизвестно. Результаты AND и OR в комбинации с предикатами, показаны в следующих таблицах:

AND

AND True False Неизвестно

True true false неизвестно False false false false Неизвестно неизвестно false неизвестно

OR

OR True False Неизвестно

True true true true False true false неизвестно Неизвестно true неизвестно неизвестно

Эти таблицы читаются способом, наподобие таблицы умножения: вы объединяете верные, неверные, или неизвестные значения из строк с их столбцами, чтобы на перекрестье получить результат. В таблице AND, например, третий столбец (Неизвестно) и первая строка (Тrue) на пересечении в верхнем правом углу дают результат - неизвестно, другими словами: Верно AND Неизвестно = неизвестно. Порядок вычислений определяется круглыми скобками. Они не представляются каждый раз. NOT оценивается первым, далее AND и OR. Различные типы предикатов <predicate> рассматриваются отдельно в следующем разделе.

<comparison predicate> (предикат сравнения)

Синтаксис

<value expresslon> <relational op> <value expresslon> |

<subquery>


<relatlonal op> :: =

=

| <




Начало  Назад  Вперед