PostgreSQL BETWEEN Заявка с пример

⚡ Умно обобщение

PostgreSQL BETWEEN извлича стойности, които попадат в рамките на включващ диапазон в рамките на операторите SELECT, INSERT, UPDATE или DELETE. Сравнява израз с две гранични стойности, работи с числови и датни данни и поддържа отрицание чрез оператора NOT.

  • 📌 Основна цел: Операторът BETWEEN съпоставя израз с диапазон, дефиниран от две стойности, свързани с AND.
  • 🔢 Включителни граници: И двете гранични стойности са включени, така че BETWEEN 200 AND 280 връща редове, равни на 200 или 280.
  • 📅 Числа и дати: Същият синтаксис филтрира числови колони и колони с дати, използвайки литерали за дата в кавички.
  • 🚫 НЕ вариант: Добавянето на NOT преди BETWEEN връща всеки ред, който попада извън зададения диапазон.
  • Изпълнение на pgAdmin: Идентичните заявки се изпълняват в редактора на заявки на pgAdmin, като изберете базата данни Demo и щракнете върху Execute (Изпълни).

PostgreSQL BETWEEN Заявка с пример

МЕЖДУ Operaвлизам PostgreSQL

- PostgreSQL МЕЖДУ Operator помага при извличане на стойности в диапазон в оператори SELECT, UPDATE, INSERT или DELETE. С оператора BETWEEN е възможно да се намери съпоставяне на стойност с диапазон от стойности. Тъй като диапазонът е приобщаващ, и двете гранични стойности се третират като част от съвпадението.

PostgreSQL Синтаксис между заявките

Ето синтаксиса на оператора BETWEEN в PostgreSQL:

expression BETWEEN value-1 AND value-2;

Изразът е просто колона или изчисление. Стойността-1 и стойността-2 ще създадат диапазон, с който да сравним израза.

PostgreSQL Между заявка с числова

Трябва да създадем пример, който показва как да приложим оператора BETWEEN към числови стойности. Разгледайте таблицата с цените, дадена по-долу:

Цена:

PostgreSQL Между заявка с числова

Нека видим списъка с всички книги, чиято цена е между 200 и 280:

SELECT *
FROM Price
WHERE price BETWEEN 200 AND 280;

Това ще върне следното:

PostgreSQL Между заявка с числова

Само два артикула имат цена между 200 и 280. Обърнете внимание, че са включени двете граници, т.е. 200 и 280.

PostgreSQL Между Заявка с дата

Операторът BETWEEN може да се използва за стойности на дата. Това означава, че можем да посочим диапазона от стойности на датата, с които трябва да работим. Разгледайте следната таблица на служителите:

Служители:

PostgreSQL Между Заявка с дата

Да предположим, че искаме да видим всички служители, които са били наети между 2013-01-01 и 2015-01-01, можем да изпълним следната команда:

SELECT *
FROM Employees
WHERE employment_date BETWEEN '2013-01-01' AND '2015-01-01';

Това връща следното:

PostgreSQL Между Заявка с дата

Postgres Between Query, използвайки NOT OperaTor

Можем да комбинираме оператора BETWEEN с оператора NOT. В такъв случай ще бъде върнат списъкът със стойности, които не са в посочения диапазон.

Например, за да видим всички артикули, чиято цена не е между 200 и 280, можем да изпълним следната заявка:

SELECT *
FROM Price
WHERE price NOT BETWEEN 200 AND 280;

Това ще върне следното:

Postgres Between Query, използвайки NOT OperaTor

Намерени са два артикула с цена, различна от 200 и 280. Поради това са върнати данните им.

PostgreSQL Между Запитване с помощта на pgAdmin

Сега нека видим как тези действия могат да се извършат с помощта на pgAdmin. Заявките са идентични с горните; променя се само средата за изпълнение.

Как да използвате между заявка с цифров вход PostgreSQL използвайки pgAdmin

Ето как да използвате заявката Between с числови стойности в PostgreSQL използвайки pgAdmin:

Стъпка 1) Влезте във вашия pgAdmin акаунт.

Отворете pgAdmin и влезте в профила си, използвайки вашите идентификационни данни.

Стъпка 2) Създайте демо база данни.

  1. От лентата за навигация вляво щракнете върху Бази данни.
  2. Щракнете върху Демо.

PostgreSQL Между Запитване с помощта на pgAdmin

Стъпка 3) Въведете следната заявка в редактора на заявки:

SELECT *
FROM Price
WHERE price BETWEEN 200 AND 280;

Стъпка 4) Щракнете върху бутона Изпълнение.

PostgreSQL Между Запитване с помощта на pgAdmin

Трябва да върне следното:

PostgreSQL Между Запитване с помощта на pgAdmin

С дата

За да постигнете същото чрез pgAdmin, направете следното:

Стъпка 1) Влезте във вашия pgAdmin акаунт.

Стъпка 2)

  1. От лентата за навигация вляво щракнете върху Бази данни.
  2. Щракнете върху Демо.

Между Запитване в PostgreSQL С дата

Стъпка 3) Въведете заявката в редактора на заявки:

SELECT *
FROM Employees
WHERE employment_date BETWEEN '2013-01-01' AND '2015-01-01';

Стъпка 4) Щракнете върху бутона Изпълнение.

Между Запитване в PostgreSQL С дата

Трябва да върне следното:

Между Запитване в PostgreSQL С дата

Използване на НЕ OperaTor

За да постигнете същото чрез pgAdmin, направете следното:

Стъпка 1) Влезте във вашия pgAdmin акаунт.

Стъпка 2)

  1. От лентата за навигация вляво щракнете върху Бази данни.
  2. Щракнете върху Демо.

Между Запитване в PostgreSQL използвайки НЕ OperaTor

Стъпка 3) Въведете заявката в редактора на заявки:

SELECT *
FROM Price
WHERE price NOT BETWEEN 200 AND 280;

Стъпка 4) Щракнете върху бутона Изпълнение.

PostgreSQL Между Заявка, използваща НЕ OperaTor

Трябва да върне следното:

PostgreSQL Между Заявка, използваща НЕ OperaTor

Изтеглете базата данни, използвана в този урок

Въпроси и Отговори

Да. Асистентите с изкуствен интелект могат да конвертират обикновен английски израз, като например „поръчки между две дати“, във валидна заявка BETWEEN с правилната колона, граници и кавички. Винаги тествайте генерирания SQL код върху вашата схема, преди да го изпълните.

Да. Инструментите с изкуствен интелект могат да посочат, че BETWEEN включва и двете граници, че литералите за дата може да се нуждаят от времеви марки и че типовете данни на колоните влияят на сравненията. Проверете всяко обяснение спрямо действителните данни и дефиниции на колоните.

Да. BETWEEN е включително, така че x BETWEEN 200 AND 280 съвпада с редове, където стойността е равна на 200, 280 или нещо между тях. Това е еквивалентно на записването на x >= 200 AND x <= 280.

Оградете всяка дата в единични кавички, например employment_date BETWEEN '2013-01-01' AND '2015-01-01'. За колони с времеви отметки разширете горната граница или използвайте < следващия ден, така че да не се изключват късните часове през деня.

Обобщете тази публикация с: