FirebirdSQL logo

Логические операторы

Table 1. Приоритет логических операторов
Оператор Назначение Приоритет

NOT

Отрицание условия поиска.

1

AND

Объединяет два предиката и более, каждый из которыхдолжен быть истинным, чтобы истинным был и весьпредикат.

2

OR

Объединяет два предиката и более, из которых должен бытьистинным хотя бы один предикат, чтобы истинным был и весьпредикат.

3

Example 1. Использование логических операторов
IF (A > B OR (A > C AND A > D) AND NOT (C = D)) THEN
...

AT

Доступно в

DSQL, PSQL.

Синтаксис
<expr> AT {TIME ZONE <time zone string> | LOCAL}

<time zone string> ::=
    '<time zone>'

<time zone> ::=
    <time zone region> |
    [+/-] <hour displacement> [: <minute displacement>]

Преобразует время или временную метку в указанный часовой пояс.Если используется ключевое слово LOCAL, то преобразование происходит в часовой пояс сессии.

Example 1. Использование функции AT
select time '12:00 GMT' at time zone '-03'
  from rdb$database;

select current_timestamp at time zone 'America/Sao_Paulo'
  from rdb$database;

select timestamp '2018-01-01 12:00 GMT' at local
  from rdb$database;

NEXT VALUE FOR

Доступно вDSQL, PSQL.

Синтаксис
NEXT VALUE FOR sequence-name

Возвращает следующее значение в последовательности (SEQUENCE). SEQUENCE является SQL совместимым термином генератора в InterBase и Firebird.Оператор NEXT VALUE FOR полностью эквивалентен функции GEN_ID (sequence-name, 1) и является рекомендуемым синтаксисом.

Note

NEXT VALUE FOR не поддерживает значение приращения, отличное от того, что было указано при создании последовательности в предложении INCREMENT [BY]. Если требуется другое значение шага, то используйте старую функцию GEN_ID.

Example 1. Использование NEXT VALUE FOR
NEW.CUST_ID = NEXT VALUE FOR CUSTSEQ;
См. также:

SEQUENCE (GENERATOR), GEN_ID.

Условные выражения

Условное выражение — это выражение, которое возвращает различные значения в зависимости от истинности некоторого условия или условий.В данном разделе описано лишь одно условное выражение CASE.Остальные условные выражения являются производными встроенными функциями и описаны в разделе Условные функции.