В этом учебном материале вы узнаете, как использовать Oracle условие BETWEEN с синтаксисом и примерами.
Описание
Oracle условие BETWEEN (называемое, также оператор BETWEEN) используется для получения значений в пределах диапазона в предложениях SELECT, INSERT, UPDATE или DELETE.
Синтаксис
Синтаксис условия BETWEEN в Oracle/PLSQL:
Параметры или аргументы
expression
Столбец или расчет.
value1 и value2
Два значения, которые создают включающий диапазон, с которым сравнивается expression.
Примечание
Oracle условие BETWEEN будет возвращать записи, где expression находится в пределах диапазона от value1 до value2 (включительно).
Пример с числами
Рассмотрим пару примеров Oracle условия BETWEEN с использованием числовых значений. Следующий пример использует условие BETWEEN для получения значений в числовом диапазоне.
Например:
1 2 3 |
SELECT * FROM customers WHERE customer_id BETWEEN 4000 AND 4999; |
Этот пример BETWEEN возвратит все строки из таблицы customers, где customer_id находится между 4000 и 4999 (включительно). Это эквивалентно следующему SELECT:
1 2 3 4 |
SELECT * FROM customers WHERE customer_id >= 4000 AND customer_id <= 4999; |
Пример c датами
Далее, давайте рассмотрим пример, как вы будете использоваться Oracle BETWEEN с датами. В следующем примере используется условие BETWEEN для получения значений в диапазоне дат.
Например:
1 2 3 4 |
SELECT * FROM order_details WHERE order_date BETWEEN TO_DATE ('01.10.2016', 'dd.mm.yyyy') AND TO_DATE ('31.10.2016', 'dd.mm.yyyy'); |
Этот пример BETWEEN возвратит все записи из таблицы order_details где order_date находится в диапазоне дат от 1 октября 2016 года и 31 октября 2016 года (включительно). Это эквивалентно следующему предложению SELECT:
1 2 3 4 |
SELECT * FROM order_details WHERE order_date >= TO_DATE('01.10.2016', 'dd.mm.yyyy') AND order_date <= TO_DATE('31.10.2016', 'dd.mm.yyyy'); |
Пример использования оператора NOT
Oracle условие BETWEEN может быть объединен с Oracle оператором NOT. Ниже приведен пример того, как можно объединить условие BETWEEN с оператором NOT.
Например:
1 2 3 |
SELECT * FROM customers WHERE customer_id NOT BETWEEN 3000 AND 3500; |
Это пример Oracle BETWEEN возвратит все строки из таблицы customers, где customer_id не находится в диапазоне от 3000 до 3500 (включительно). Это эквивалентно следующему предложению SELECT:
1 2 3 4 |
SELECT * FROM customers WHERE customer_id < 3000 OR customer_id > 3500; |