FirebirdSQL logo

BETWEEN

Доступно в

DSQL, PSQL, ESQL.

Синтаксис
<value> [NOT] BETWEEN <value_1> AND <value_2>

Предикат BETWEEN проверяет, попадает (или не попадает при использовании NOT) ли значение во включающий диапазон значений.

Операнды для предиката BETWEEN — это два аргумента совместимых типов.В отличие от некоторых других СУБД в Firebird предикат BETWEEN не является симметричным.Меньшее значение должно быть первым аргументом, иначе предикат BETWEEN всегда будет ложным.Поиск является включающим.Таким образом, предикат BETWEEN можно переписать следующим образом:

<value> >= <value_1> AND <value> <= <value_2>

При использовании предиката BETWEEN в поисковых условиях DML запросов, оптимизатор Firebird может использовать индекс по искомому столбцу, если таковой доступен.

Example 1. Использование предиката BETWEEN
SELECT *
FROM EMPLOYEE
WHERE HIRE_DATE BETWEEN date '01.01.1992' AND CURRENT_DATE

LIKE

Доступно в

DSQL, PSQL, ESQL.

Синтаксис
<match value> [NOT] LIKE <pattern>
  [ESCAPE <escape character>]

<match value> ::= выражение символьного типа
<pattern> ::= шаблон поиска
<escape character> ::= символ экранирования

Предикат LIKE сравнивает выражение символьного типа с шаблоном, определённым во втором выражении.Чувствительность к регистру или диакритическим знакам при сравнении определяется используемым параметром сортировки (COLLATION).

При использовании оператора LIKE во внимание принимаются все символы строки-шаблона.Это касается так же начальных и конечных пробелов.Если операция сравнения в запросе должна вернуть все строки, содержащие строки LIKE 'абв ' (с символом пробела на конце), то строка, содержащая 'абв' (без пробела), не будет возвращена.