SQL между оператора е логически оператор в езика за структурирани заявки. Операторът Between се използва за извличане на данни в диапазона, посочен в условието в заявката.
Операторът SELECT между операторите се използва за извличане на данните:текст, число или дата.
Между означава в рамките на двете стойности, така че между операторите включва две стойности:начална стойност и крайна стойност.
Можем да използваме оператор между с оператор Select в клаузата where
Можем също да използваме между оператор с оператор Delete и оператор за актуализиране.
В оператора за изтриване използваме оператор между, за да изтрием стойностите между двете стойности или посочени в рамките на диапазона, и с оператор за актуализиране, за да променим стойностите.
Синтаксис на оператор BETWEEN в SQL
SELECT COLUMNNAME1, COLUMNAME2 FROM TABLENAME WHERE COLUMNNAME BETWEEN VAL_1 AND VAL_2
Тук val_1 е начална стойност, а val_2 е неговата крайна стойност
Нека разберем оператора BETWEEN в SQL с примери.
МЕЖДУ ОПЕРАТОР С ИЗБИРАНЕ НА ИЗБИРАНЕ:-
Операторите SELECT се използват за извличане на данните от SQL таблицата. Използвахме оператор BETWEEN с израза SELECT, за да извлечем записите между две стойности от SQL таблицата.
Разгледайте следните таблици заедно с дадените записи.
ИДЕНТИФИКАТОР НА СЛУЖИТЕЛЯ | FIRST_NAME | LAST_NAME | ЗАПЛАТА | ГРАД | ОТДЕЛ | MANAGERID | ВЪЗРАСТ | DOJ |
1001 | Вайбхав | Шарма | 65 000 | ПУНА | ORACLE | 1 | 23 | 20.09.2021 |
1002 | Нихил | Вани | 60 000 | NOIDA | ORACLE | 1 | 21 | 23.09.2021 |
1003 | Вайбхави | Мишра | 50 000 | ДЖАЙПУР | FMW | 2 | 22 | 30.09.2021 |
2001 | Ручика | Джайн | 55500 | ЧАНДИГАР | ORACLE | 1 | 22 | 30.09.2021 |
2002 | Прачи | Шарма | 65500 | ПУНА | FMW | 2 | 23 | 20.09.2021 |
2003 | Бхавеш | Джайн | 50 000 | МУМБАЙ | ТЕСТВАНЕ | 4 | 21 | 23.09.2021 |
3001 | Дийпам | Джаухари | 55500 | ПУНА | JAVA | 3 | 21 | 23.09.2021 |
3002 | ANUJA | WANRE | 50500 | ДЖАЙПУР | FMW | 2 | 22 | 30.09.2021 |
3003 | Праноти | Шенде | 58500 | МУМБАЙ | JAVA | 3 | 23 | 20.09.2021 |
4001 | РАДЖЕШ | GOUD | 60500 | МУМБАЙ | ТЕСТВАНЕ | 4 | 23 | 20.09.2021 |
Пример 1: Напишете заявка за показване на записите от таблицата на служителите, чиято заплата на служителите е между 48500 и 60000.
SELECT * FROM EMPLOYEE WHERE SALARY BETWEEN 48500 AND 60000;
В горното изявление извадихме всички подробности от таблицата на служителите, чиято заплата на служителите е между 48500 и 60000.
Изход:
ИДЕНТИФИКАТОР НА СЛУЖИТЕЛЯ | FIRST_NAME | LAST_NAME | ЗАПЛАТА | ГРАД | ОТДЕЛ | MANAGERID | ВЪЗРАСТ | DOJ |
1002 | Нихил | Вани | 60 000 | NOIDA | ORACLE | 1 | 21 | 23.09.2021 |
1003 | Вайбхави | Мишра | 50 000 | ДЖАЙПУР | FMW | 2 | 22 | 30.09.2021 |
2001 | Ручика | Джайн | 55500 | ЧАНДИГАР | ORACLE | 1 | 22 | 30.09.2021 |
2003 | Бхавеш | Джайн | 50 000 | МУМБАЙ | ТЕСТВАНЕ | 4 | 21 | 23.09.2021 |
3001 | Дийпам | Джаухари | 55500 | ПУНА | JAVA | 3 | 21 | 23.09.2021 |
3002 | ANUJA | WANRE | 50500 | ДЖАЙПУР | FMW | 2 | 22 | 30.09.2021 |
3003 | Праноти | Шенде | 58500 | МУМБАЙ | JAVA | 3 | 23 | 20.09.2021 |
Пример 2: Напишете заявка за показване на идентификатор на служител, собствено име, фамилия, заплата и град от таблицата на служителите, чийто град на служителите е между Мумбай и Пуна.
SELECT EMPLOYEEID, FIRST_NAME, LAST_NAME, SALARY, CITY FROM EMPLOYEE WHERE CITY BETWEEN 'MUMBAI' AND 'PUNE';
В горното изявление извлечехме идентификационния номер на служителя, имената на служителите, града на служителя и заплатата от таблицата на служителите на тези служители, чийто градски стандарт между Мумбай и Пуна.
Изход:
ИДЕНТИФИКАТОР НА СЛУЖИТЕЛЯ | FIRST_NAME | LAST_NAME | ЗАПЛАТА | ГРАД |
1001 | Вайбхав | Шарма | 65 000 | ПУНА |
1002 | Нихил | Вани | 60 000 | NOIDA |
2002 | Прачи | Шарма | 65500 | ПУНА |
2003 | Бхавеш | Джайн | 50 000 | МУМБАЙ |
3001 | Дийпам | Джаухари | 55500 | ПУНА |
3003 | Праноти | Шенде | 58500 | МУМБАЙ |
4001 | РАДЖЕШ | GOUD | 60500 | МУМБАЙ |
Пример 3: Напишете заявка за показване на идентификатор на служител, собствено име, фамилия, заплата и идентификатор на отдел и мениджър от таблицата на служителите, чийто отдел за служители е между Java и Oracle или заплата между 45000 и 55000.
SELECT EMPLOYEEID, FIRST_NAME, LAST_NAME, SALARY, DEPARTMENT, MANAGERID FROM EMPLOYEE WHERE DEPARTMENT BETWEEN 'JAVA' AND 'ORACLE' OR SALARY BETWEEN 45000 AND 55000;
Използвахме множество оператори BETWEEN и оператори OR в горното изявление. Извадихме идентификатора на служител, собственото име, фамилията, заплатата, отдела и идентификатора на мениджъра от таблицата на служителите. Първият оператор BETWEEN се използва за извличане на горните подробности за онези служители, чието име на отдел е между Java и Oracle. След първия оператор BETWEEN, той ще превключи към друг оператор BETWEEN, който се използва за извличане на горните данни за тези служители, чиято заплата е между 45000 и 55000. Горният оператор ще покаже и двата извлечени записа от оператора BETWEEN, защото използвахме оператор OR в изявление.
Изход:
ИДЕНТИФИКАТОР НА СЛУЖИТЕЛЯ | FIRST_NAME | LAST_NAME | ЗАПЛАТА | ОТДЕЛ | MANAGERID |
1001 | Вайбхав | Шарма | 65 000 | ORACLE | 1 |
1002 | Нихил | Вани | 60 000 | ORACLE | 1 |
1003 | Вайбхави | Мишра | 50 000 | FMW | 2 |
2001 | Ручика | Джайн | 55500 | ORACLE | 1 |
2003 | Бхавеш | Джайн | 50 000 | ТЕСТВАНЕ | 4 |
3001 | Дийпам | Джаухари | 55500 | JAVA | 3 |
3002 | ANUJA | WANRE | 50500 | FMW | 2 |
3003 | Праноти | Шенде | 58500 | JAVA | 3 |
Пример 4: Напишете заявка за показване на идентификатор на служител, собствено име, фамилия, заплата и идентификатор на град и мениджър от таблицата на служителите, чийто град на служителите е между Чандигарх и Пуна и заплата между 45 000 и 60 000.
SELECT EMPLOYEEID, FIRST_NAME, LAST_NAME, SALARY, CITY, MANAGERID FROM EMPLOYEE WHERE CITY BETWEEN 'CHANDIGARH' AND 'PUNE' AND SALARY BETWEEN 45000 AND 60000;
Използвахме множество оператори BETWEEN и оператори OR в горното изявление. Извадихме идентификатора на служител, собственото име, фамилията, заплатата, града и идентификатора на мениджъра от таблицата на служителите. Първият оператор BETWEEN се използва за извличане на горните подробности за онези служители, чието име на град е между Чандигарх и Пуна. След първия оператор BETWEEN, той ще превключи към друг оператор BETWEEN, който се използва за извличане на горните данни за онези служители, чиято заплата е между 45000 и 60000. Горното изявление ще покаже само тези записи на служителите, чието име на град между Чандигарх и Пуна и Заплата между 45000 и 60000, защото използвахме оператор И.
Изход:
ИДЕНТИФИКАТОР НА СЛУЖИТЕЛЯ | FIRST_NAME | LAST_NAME | ЗАПЛАТА | ГРАД | MANAGERID |
1002 | Нихил | Вани | 60 000 | NOIDA | 1 |
1003 | Вайбхави | Мишра | 50 000 | ДЖАЙПУР | 2 |
2001 | Ручика | Джайн | 55500 | ЧАНДИГАР | 1 |
2003 | Бхавеш | Джайн | 50 000 | МУМБАЙ | 4 |
3001 | Дийпам | Джаухари | 55500 | ПУНА | 3 |
3002 | ANUJA | WANRE | 50500 | ДЖАЙПУР | 2 |
3003 | Праноти | Шенде | 58500 | МУМБАЙ | 3 |
Пример 5: Напишете заявка за показване на идентификатор на служител, име, фамилия, заплата и град от таблицата на служителите, където заплатата на служителите е между 50000 и 65000 подредени по град.
SELECT EMPLOYEEID, FIRST_NAME, LAST_NAME, SALARY, CITY, MANAGERID FROM EMPLOYEE WHERE CITY BETWEEN 'CHANDIGARH' AND 'PUNE' AND SALARY BETWEEN 45000 AND 60000;
В горното изявление извлечехме идентификационния номер на служителя, собственото име, фамилията, заплатата и града от таблицата на служителите на тези служители, чиято заплата е между 50000 и 65000. Показахме резултата във възходящ ред по колоната за град.
Изход:
ИДЕНТИФИКАТОР НА СЛУЖИТЕЛЯ | FIRST_NAME | LAST_NAME | ЗАПЛАТА | ГРАД |
2001 | Ручика | Джайн | 55500 | ЧАНДИГАР |
1003 | Вайбхави | Мишра | 50 000 | ДЖАЙПУР |
3002 | АНУЯ | WANRE | 50500 | ДЖАЙПУР |
2003 | Бхавеш | Джайн | 50 000 | МУМБАЙ |
3003 | Праноти | Шенде | 58500 | МУМБАЙ |
4001 | РАДЖЕШ | GOUD | 60500 | МУМБАЙ |
1002 | Нихил | Вани | 60 000 | NOIDA |
1001 | Вайбхав | Шарма | 65 000 | ПУНА |
3001 | Дийпам | Джаухари | 55500 | ПУНА |
Пример 6: Напишете заявка за показване на идентификационен номер на служител, собствено име, фамилия, заплата и град, където заплатата на служителя е между 45 000 и 65 000 и където градът на служителя е само „Мумбай“, „Пуна“.
SELECT EMPLOYEEID, FIRST_NAME, LAST_NAME, SALARY, CITY, MANAGERID FROM EMPLOYEE WHERE CITY BETWEEN 'CHANDIGARH' AND 'PUNE' AND SALARY BETWEEN 45000 AND 60000;
В горното изявление извадихме идентификатора на служителя, собственото име, фамилията, заплатата и града от таблицата на служителите на тези служители, чиято заплата на служителите е между 45 000 и 65 000, а градът включва само Мумбай и Пуна.
Изход:
ИДЕНТИФИКАТОР НА СЛУЖИТЕЛЯ | FIRST_NAME | LAST_NAME | ГРАД | ЗАПЛАТА |
1001 | Вайбхав | Шарма | ПУНА | 65 000 |
2003 | Бхавеш | Джайн | МУМБАЙ | 50 000 |
3001 | Дийпам | Джаухари | ПУНА | 55500 |
3003 | Праноти | Шенде | МУМБАЙ | 58500 |
4001 | РАДЖЕШ | GOUD | МУМБАЙ | 60500 |
МЕЖДУ ОПЕРАТОР С ДЕКЛАРАЦИЯ ЗА АКТУАЛИЗИРАНЕ
Инструкцията UPDATE променя данните, присъстващи в SQL таблиците. Ще използваме оператор BETWEEN с оператора UPDATE, за да модифицираме записите, които отговарят на диапазона, посочен в оператора.
Синтаксис на оператор BETWEEN с израза UPDATE:
UPDATE TABLE_NAME SET COLUMN_NAME = VALUES WHERE COLUMN_NAME BETWEEN VALUE1 AND VALUE2;
Разгледайте следните таблици заедно с дадените записи.
ИДЕНТИФИКАТОР НА СЛУЖИТЕЛЯ | FIRST_NAME | LAST_NAME | ЗАПЛАТА | ГРАД | ОТДЕЛ | MANAGERID | ВЪЗРАСТ | DOJ |
1001 | Вайбхав | Шарма | 65 000 | ПУНА | ORACLE | 1 | 23 | 20.09.2021 |
1002 | Нихил | Вани | 60 000 | NOIDA | ORACLE | 1 | 21 | 23.09.2021 |
1003 | Вайбхави | Мишра | 50 000 | ДЖАЙПУР | FMW | 2 | 22 | 30.09.2021 |
2001 | Ручика | Джайн | 55500 | ЧАНДИГАР | ORACLE | 1 | 22 | 30.09.2021 |
2002 | Прачи | Шарма | 65500 | ПУНА | FMW | 2 | 23 | 20.09.2021 |
2003 | Бхавеш | Джайн | 50 000 | МУМБАЙ | ТЕСТВАНЕ | 4 | 21 | 23.09.2021 |
3001 | Дийпам | Джаухари | 55500 | ПУНА | JAVA | 3 | 21 | 23.09.2021 |
3002 | ANUJA | WANRE | 50500 | ДЖАЙПУР | FMW | 2 | 22 | 30.09.2021 |
3003 | Праноти | Шенде | 58500 | МУМБАЙ | JAVA | 3 | 23 | 20.09.2021 |
4001 | РАДЖЕШ | GOUD | 60500 | МУМБАЙ | ТЕСТВАНЕ | 4 | 23 | 20.09.2021 |
Пример 1: Напишете заявка, за да промените заплатата на служителите с 1,2 пъти, чийто град на служител е между Мумбай и Нойда.
UPDATE EMPLOYEE SET SALARY = SALARY * 1.2 WHERE CITY BETWEEN ‘MUMBAI’ AND ‘NOIDA’;
В горното изявление увеличаваме заплатата на служителите с 1,2 от тези, чийто град е между Мумбай и Пуна.
За да проверим дали заплатата на служителите е актуализирана или не успешно, ще използваме оператора SELECT:
SELECT EMPLOYEEID, SALARY, CITY FROM EMPLOYEE WHERE CITY BETWEEN ‘MUMBAI’ AND ’NOIDA’;
ИДЕНТИФИКАТОР НА СЛУЖИТЕЛЯ | ЗАПЛАТА | ГРАД |
1002 | 86400 | NOIDA |
2003 | 86400 | МУМБАЙ |
3003 | 84240 | МУМБАЙ |
4001 | 87210 | МУМБАЙ |
Пример 2: Напишете заявка, за да актуализирате града на служителя, чиято дата на присъединяване е между 2021-09-20 и 2021-09-22 и заплатата е между 78500 и 85000.
UPDATE EMPLOYEE SET CITY = 'DELHI' WHERE DOJ BETWEEN '2021-09-20' AND '2021-09-22' AND SALARY BETWEEN 78500 AND 85000;
Използвахме множество оператори BETWEEN в изявлението в горния израз. Задаваме град на служителите в Делхи на онези служители, чиято дата на присъединяване е между '2021-09-20' И '2021-09-22' и друг между ще провери чия заплата е между 78500 и 85000. Ако и двата оператора BETWEEN отговарят на условие само за служителя, тогава името на града на служителя ще се промени.
За да проверим дали заплатата на служителите е актуализирана или не успешно, ще използваме оператора SELECT:
SELECT EMPLOYEEID, CITY, SALARY, DOJ FROM EMPLOYEE WHERE DOJ BETWEEN '2021-09-20' AND '2021-09-22' AND SALARY BETWEEN 78500 AND 85000;
ИДЕНТИФИКАТОР НА СЛУЖИТЕЛЯ | ГРАД | ЗАПЛАТА | DOJ |
2002 | ДЕЛХИ | 786400 | 20.09.2021 |
3003 | ДЕЛХИ | 84240 | 20.09.2021 |
МЕЖДУ ОПЕРАТОР С ДЕКЛАРАЦИЯ ЗА ИЗТРИВАНЕ
Инструкцията DELETE се използва за изтриване на записите от SQL таблицата. Използваме оператор BETWEEN с оператор DELETE, за да изтрием записите, които отговарят на диапазона, посочен в оператора.
Синтаксис на оператор BETWEEN с израза DELETE:
DELETE FROM TABLE_NAME WHERE COLUMN_NAME BETWEEN VALUE1 AND VALUE2;
Разгледайте следните таблици заедно с дадените записи.
ИДЕНТИФИКАТОР НА СЛУЖИТЕЛЯ | FIRST_NAME | LAST_NAME | ЗАПЛАТА | ГРАД | ОТДЕЛ | MANAGERID | ВЪЗРАСТ | DOJ |
1001 | Вайбхав | Шарма | 78000 | ПУНА | ORACLE | 1 | 23 | 20.09.2021 |
1002 | Нихил | Вани | 86400 | NOIDA | ORACLE | 1 | 21 | 23.09.2021 |
1003 | Вайбхави | Мишра | 50 000 | ДЖАЙПУР | FMW | 2 | 22 | 30.09.2021 |
2001 | Ручика | Джайн | 55500 | ЧАНДИГАР | ORACLE | 1 | 22 | 30.09.2021 |
2002 | Прачи | Шарма | 78600 | ДЕЛХИ | FMW | 2 | 23 | 20.09.2021 |
2003 | Бхавеш | Джайн | 86400 | МУМБАЙ | ТЕСТВАНЕ | 4 | 21 | 23.09.2021 |
3001 | Дийпам | Джаухари | 66600 | ПУНА | JAVA | 3 | 21 | 23.09.2021 |
3002 | ANUJA | WANRE | 60600 | ДЖАЙПУР | FMW | 2 | 22 | 30.09.2021 |
3003 | Праноти | Шенде | 84240 | ДЕЛХИ | JAVA | 3 | 23 | 20.09.2021 |
4001 | РАДЖЕШ | GOUD | 87120 | МУМБАЙ | ТЕСТВАНЕ | 4 | 23 | 20.09.2021 |
Пример 1: Напишете заявка, за да изтриете данните за служителите от таблицата за служителите на тези служители, чиято заплата е между 45000 и 65000.
DELETE FROM EMPLOYEE WHERE SALARY BETWEEN 45000 AND 65000;
В горното изявление изтриваме данните за служителите на тези служители, чиято заплата е между 45000 и 65000.
За да проверим дали данните за служителите са изтрити или не успешно, ще използваме оператора SELECT:
SELECT * FROM EMPLOYEE;
ИДЕНТИФИКАТОР НА СЛУЖИТЕЛЯ | FIRST_NAME | LAST_NAME | ЗАПЛАТА | ГРАД | ОТДЕЛ | MANAGERID | ВЪЗРАСТ | DOJ |
1001 | Вайбхав | Шарма | 78000 | ПУНА | ORACLE | 1 | 23 | 20.09.2021 |
1002 | Нихил | Вани | 86400 | NOIDA | ORACLE | 1 | 21 | 23.09.2021 |
2002 | Прачи | Шарма | 78600 | ДЕЛХИ | FMW | 2 | 23 | 20.09.2021 |
2003 | Бхавеш | Джайн | 86400 | МУМБАЙ | ТЕСТВАНЕ | 4 | 21 | 23.09.2021 |
3001 | Дийпам | Джаухари | 66600 | ПУНА | JAVA | 3 | 21 | 23.09.2021 |
3003 | Праноти | Шенде | 84240 | ДЕЛХИ | JAVA | 3 | 23 | 20.09.2021 |
4001 | РАДЖЕШ | GOUD | 87120 | МУМБАЙ | ТЕСТВАНЕ | 4 | 23 | 20.09.2021 |
Пример 2: Напишете заявка, за да изтриете данните за служителите от таблицата на служителите, чийто град е между Делхи и Пуна.
DELETE FROM EMPLOYEE WHERE CITY BETWEEN ‘DELHI’ AND ‘PUNE’;
В горното изявление изтриваме данните за служителите на тези служители, чийто град е между Делхи и Пуна.
За да проверим дали данните за служителите са изтрити или не успешно, ще използваме оператора SELECT:
SELECT * FROM EMPLOYEE;