Синтаксис ( нестандартный )

Синтаксис
< value expresslon > < relational op > < value expresslon > |
< subquery >
< relatlonal op > :: =
=
| <
| >
| <
| >=
| < >
Если либо < value expression > = NULL, либо < comparison predicate > = неизвестно; другими словами, это верно если сравнение верно или неверно если сравнение неверно.
< relational op > имеет стандартные математические значения для числовых значений; для других типов значений, эти значения определяются конкретной реализацией.
Оба < value expression > должны иметь сравнимые типы данных. Если подзапрос < subquery > используется, он должен содержать одно выражение < value expression > в предложении SELECT, чье значение будет заменять второе выражение < value expression > в предикате сравнения < comparision predicate >, каждый раз когда < subquery > действительно выполяняется.
< between predicate >
Синтаксис
< value expression > [NOT] BETWEEN < value expression >
AND < value expression >
< between predicate > — A BETWEEN B AND C , имеет такое же значение что и < predicate > — ( A >= B AND < = C). < between predicate > для которого A NOT BETWEEN B AND C, имеет такое же значение что и NOT ( BETWEEN B AND C). < value expression > может быть выведено с помощью нестандартного запроса < subquery > ( *nonstandard* ).
< in prediicate >
Синтаксис
< value expression > [NOT] IN < value list > | < subquery >
Список значений < value list > будет состоять из одного или более перечисленных значений в круглых скобках и отделяемых запятыми, которые имеют сравнимый с < value expression > тип данных. Если используется подзапрос < subquery >, он должен содержать только одно выражение < value expression > в предложении SELECT ( возможно и больше, но это уже будет вне стандарта ANSI ). Подзапрос < subquery > фактически, выполяняется отдельно для каждой строки-кандидата основного запроса, и значения которые он выведет, будут составлять список значений < value list > для этой строки. В любом случае, предикат < in predicate > будет верен если выражение < value expression > представленное в списке значений < value list >, если не указан NOT. Фраза A NOT IN (B, C) является эквивалентом фразы NOT (A IN (B, C)).
< like predicate >
Синтаксис
< charvalue > [NOT] LIKE < pattern > [ESCAPE
< escapechar >]
< charvalue > — это любое *нестандартное* выражение < value expression > алфавитно-цифрового типа. < charvalue > может быть, в соответствии со стандартом, только определенным столбцом < column spec >. Образец < pattern > состоит из строки которая будет проверена на совпадение с < charvalue >. Символ окончания < escapechar > — это одиночный алфавитно-цифровой символ. Совпадение произойдет, если верны следующие условия :
 

Для каждого символа подчеркивания < underscore > в образце < pattern > которая не предшествует символу окончания < escapechar >, имеется один соответствующий ему символ < charvalue >.
Для каждого < percent sign > в образце < pattern >, который не предшествует < escapechar >, имеются нули или более соответствующие символы в < charvalue >.

Для каждого < escapechar > в < pattern > который не предшествует другому < escapechar >, нет никакого соответствующего символа в < charvalue >.
Для каждого иного символа в < pattern >, один и тот же символ устанавливается у соответствующей отметке в < charvalue >.
Если совпадение произошло, < like predicate > — верен, если не был указан NOT. Фраза NOT LIKE ‘текст’ — эквивалентна NOT ( A LIKE ‘текст’).

< null predicate >
Синтаксис
< column spec > IS [NOT] NULL
< column spec > = IS NULL, если NULL значение представлено в этом столбце. Это сделает < null predicate > верным если не указан NULL. Фраза < column spec > IS NOT NULL, имеет тот же результат что и NOT ( < column spec > IS NULL ).
< quantified predicate >
Синтаксис
< value expression > < relational op >
< quantifier > < subquery >
< quantifier > :: = ANY | ALL | SOME
Предложение SELECT подзапроса < subquery > должно содержать одно и только одно выражение значения < value expression >. Все значения выведенные подзапросом < subquery > составляют набор результатов < result set >. < value expression > сравнивается, Используя оператор связи < relational operator >, с каждым членом набора результатов < result set >. Это сравнение оценивается следующим образом:
· Если < quantifier > = ALL, и каждый член набора результатов < result set > делает это сравнение верным, < quantified predicate > — верен.
· Если < quantifier > = ANY, и имеется по крайней мере один член из набора результатов < result set > , который делает верным это сравнение, то < quantified predicate > является верным.
· Если набор результатов < result set > пуст, то < quantified predicate > верен, если < quantifier > = ALL , и неверен если иначе.
· Если < quantifier > = SOME, эффект — тот же что и для ANY.
· Если < quantified predicate > не верен и не неверен, он — неизвестен.
< exists predicate >
Синтаксис :
EXISTS (< subquery >)
Если подзапрос < subquery > выводит одну или более строк вывода, < exists predicate > — верен; и неверен если иначе.

‹ Разрыв примитивов по команде BREAK
Вверх
ПРИЛОЖЕНИЕ E таблицы, используемые в SQL ›

Оцените статью
Айтистанция
Добавить комментарий

Adblock
detector