Оператор PostgreSQL BETWEEN помогает нам получать значения в пределах диапазона в инструкциях SELECT, UPDATE, INSERT или DELETE. Используя оператор BETWEEN, мы можем сопоставить значение с диапазоном значений.
В этом уроке вы узнаете
Синтаксис
Вот синтаксис оператора BETWEEN в PostgreSQL:
expression BETWEEN value-1 AND value-2;
Выражение — это просто столбец или расчет.
Значение-1, значение-2 создаст диапазон, с которым мы будем сравнивать выражение.
С числовым
Нам нужно создать пример, который показывает, как применить оператор BETWEEN к числовым значениям. Рассмотрим таблицу цен, приведенную ниже:
Цена:
Давайте перечислим список всех книг, цена которых составляет от 200 до 280:
SELECT * FROM Price WHERE price BETWEEN 200 AND 280;
Это вернет следующее:
Только два предмета имеют цену в диапазоне от 200 до 280. Обратите внимание, что включены два, то есть 200 и 280.
С датой
Оператор BETWEEN может использоваться для значений даты. Это означает, что мы можем указать диапазон значений даты, с которыми нам нужно работать. Рассмотрим следующую таблицу сотрудников:
Количество сотрудников:
Предположим, что мы хотим увидеть всех сотрудников, которые работали между 2013-01-01 и 2015-01-01, мы можем запустить следующую команду:
SELECT * FROM Employees WHERE employment_date BETWEEN '2013-01-01' AND '2015-01-01';
Это возвращает следующее:
Использование оператора NOT
Мы можем объединить оператор МЕЖДУ с оператором НЕ. В таком случае будет возвращен список значений, которые не находятся в указанном диапазоне.
Например, чтобы увидеть все товары, цена которых не находится в диапазоне от 200 до 280, мы можем выполнить следующий запрос:
SELECT * FROM Price WHERE price NOT BETWEEN 200 AND 280;
Это вернет следующее:
Были найдены два предмета с ценой от 200 до 280. Следовательно, их детали были возвращены.
Использование pgAdmin
Теперь посмотрим, как эти действия можно выполнить с помощью pgAdmin.
С числовым
Чтобы сделать то же самое через pgAdmin, сделайте это:
Шаг 1) Войдите в свою учетную запись pgAdmin.
Шаг 2)
- На панели навигации слева нажмите Базы данных.
- Нажмите Демо.
Шаг 3) Введите запрос в редакторе запросов:
SELECT * FROM Price WHERE price BETWEEN 200 AND 280;
Шаг 4) Нажмите кнопку «Выполнить».
Он должен вернуть следующее:
С датой
Чтобы сделать то же самое через pgAdmin, сделайте это:
Шаг 1) Войдите в свою учетную запись pgAdmin.
Шаг 2)
- На панели навигации слева нажмите Базы данных.
- Нажмите Демо.
Шаг 3) Введите запрос в редакторе запросов:
SELECT * FROM Employees WHERE employment_date BETWEEN '2013-01-01' AND '2015-01-01';
Шаг 4) Нажмите кнопку «Выполнить».
Он должен вернуть следующее:
Использование оператора NOT
Чтобы сделать то же самое через pgAdmin, сделайте это:
Шаг 1) Войдите в свою учетную запись pgAdmin.
Шаг 2)
- На панели навигации слева нажмите Базы данных.
- Нажмите Демо.
Шаг 3) Введите запрос в редакторе запросов:
SELECT * FROM Price WHERE price NOT BETWEEN 200 AND 280;
Шаг 4) Нажмите кнопку «Выполнить».
Он должен вернуть следующее:
Резюме:
- Мы используем оператор BETWEEN для извлечения значений, которые лежат в указанном диапазоне, используя оператор SELECT, UPDATE, INSERT или DELETE.
- Диапазон задается с помощью оператора AND.
- Оператор может использоваться с числовыми значениями и значениями даты.
- Когда используется с числовыми значениями, это помогает нам получить значения, которые находятся в пределах указанного диапазона.
- Когда используется со значениями даты, это помогает нам получить значения, которые находятся в определенном диапазоне.
- При использовании с оператором NOT оператор BETWEEN возвращает значения, которые не лежат в указанном диапазоне.
Загрузите базу данных, использованную в этом руководстве