Operátor SQL Between je logický operátor v jazyce Structured Query Language. Operátor Between se používá k načtení dat v rozsahu určeném v podmínce v dotazu.
SELECT mezi operátory se používá k načtení dat:text, číslo nebo datum.
Mezi znamená v rámci dvou hodnot, takže mezi operátory zahrnuje dvě hodnoty:počáteční hodnotu a koncovou hodnotu.
Můžeme použít operátor between s příkazem Select v klauzuli where
Můžeme také použít mezi operátorem s příkazem Delete a příkazem update.
V příkazu Delete používáme operátor mezi k odstranění hodnot mezi dvěma hodnotami nebo zadanými v rozsahu a pomocí příkazu Update k úpravě hodnot.
Syntaxe operátoru BETWEEN v SQL
SELECT COLUMNNAME1, COLUMNAME2 FROM TABLENAME WHERE COLUMNNAME BETWEEN VAL_1 AND VAL_2
Zde je hodnota val_1 počáteční hodnotou a hodnota val_2 je její koncová hodnota
Pojďme pochopit operátor BETWEEN v SQL na příkladech.
MEZ OPERÁTORA S VÝBĚROVÝM PROHLÁŠENÍM:-
Příkazy SELECT se používají k načtení dat z tabulky SQL. Použili jsme operátor BETWEEN s příkazem SELECT k načtení záznamů mezi dvěma hodnotami z tabulky SQL.
Zvažte následující tabulky spolu s danými záznamy.
ID ZAMĚSTNANCE | FIRST_NAME | LAST_NAME | PLAT | MĚSTO | ODDĚLENÍ | ID SPRÁVCE | VĚK | DOJ |
1001 | Vaibhav | Sharma | 65 000 | PUNE | ORACLE | 1 | 23 | 20. 9. 2021 |
1002 | Nikhil | Vani | 60 000 | NOIDA | ORACLE | 1 | 21 | 23. 9. 2021 |
1003 | Vaibhavi | Mishra | 50 000 | JAIPUR | FMW | 2 | 22 | 2021-09-30 |
2001 | Ruchika | Jain | 55500 | CHANDIgarH | ORACLE | 1 | 22 | 2021-09-30 |
2002 | Prachi | Sharma | 65500 | PUNE | FMW | 2 | 23 | 20. 9. 2021 |
2003 | Bhavesh | Jain | 50 000 | MUMBAI | TESTOVÁNÍ | 4 | 21 | 23. 9. 2021 |
3001 | Deepam | Jauhari | 55500 | PUNE | JAVA | 3 | 21 | 23. 9. 2021 |
3002 | ANUJA | WANRE | 50500 | JAIPUR | FMW | 2 | 22 | 2021-09-30 |
3003 | Pranoti | Shende | 58500 | MUMBAI | JAVA | 3 | 23 | 20. 9. 2021 |
4001 | RAJESH | GOUD | 60500 | MUMBAI | TESTOVÁNÍ | 4 | 23 | 20. 9. 2021 |
Příklad 1: Napište dotaz pro zobrazení záznamů z tabulky zaměstnanců, jejichž plat zaměstnanců je mezi 48 500 a 60 000.
SELECT * FROM EMPLOYEE WHERE SALARY BETWEEN 48500 AND 60000;
Ve výše uvedeném prohlášení jsme získali všechny podrobnosti z tabulky zaměstnanců, jejichž plat zaměstnanců je mezi 48 500 a 60 000.
Výstup:
ID ZAMĚSTNANCE | FIRST_NAME | LAST_NAME | PLAT | MĚSTO | ODDĚLENÍ | ID SPRÁVCE | VĚK | DOJ |
1002 | Nikhil | Vani | 60 000 | NOIDA | ORACLE | 1 | 21 | 23. 9. 2021 |
1003 | Vaibhavi | Mishra | 50 000 | JAIPUR | FMW | 2 | 22 | 2021-09-30 |
2001 | Ruchika | Jain | 55500 | CHANDIgarH | ORACLE | 1 | 22 | 2021-09-30 |
2003 | Bhavesh | Jain | 50 000 | MUMBAI | TESTOVÁNÍ | 4 | 21 | 23. 9. 2021 |
3001 | Deepam | Jauhari | 55500 | PUNE | JAVA | 3 | 21 | 23. 9. 2021 |
3002 | ANUJA | WANRE | 50500 | JAIPUR | FMW | 2 | 22 | 2021-09-30 |
3003 | Pranoti | Shende | 58500 | MUMBAI | JAVA | 3 | 23 | 20. 9. 2021 |
Příklad 2: Napište dotaz pro zobrazení ID zaměstnance, jména, příjmení, platu a města z tabulky zaměstnanců, jejichž město zaměstnanců je mezi Bombají a Pune.
SELECT EMPLOYEEID, FIRST_NAME, LAST_NAME, SALARY, CITY FROM EMPLOYEE WHERE CITY BETWEEN 'MUMBAI' AND 'PUNE';
Ve výše uvedeném prohlášení jsme získali ID zaměstnance, jména zaměstnanců, město zaměstnance a plat z tabulky zaměstnanců těch zaměstnanců, jejichž městský standard mezi Bombají a Pune.
Výstup:
ID ZAMĚSTNANCE | FIRST_NAME | LAST_NAME | PLAT | MĚSTO |
1001 | Vaibhav | Sharma | 65 000 | PUNE |
1002 | Nikhil | Vani | 60 000 | NOIDA |
2002 | Prachi | Sharma | 65500 | PUNE |
2003 | Bhavesh | Jain | 50 000 | MUMBAI |
3001 | Deepam | Jauhari | 55500 | PUNE |
3003 | Pranoti | Shende | 58500 | MUMBAI |
4001 | RAJESH | GOUD | 60500 | MUMBAI |
Příklad 3: Napište dotaz pro zobrazení ID zaměstnance, jména, příjmení, platu a ID oddělení a manažera z tabulky zaměstnanců, jejichž zaměstnanecké oddělení je mezi Java a Oracle nebo plat mezi 45 000 a 55 000.
SELECT EMPLOYEEID, FIRST_NAME, LAST_NAME, SALARY, DEPARTMENT, MANAGERID FROM EMPLOYEE WHERE DEPARTMENT BETWEEN 'JAVA' AND 'ORACLE' OR SALARY BETWEEN 45000 AND 55000;
Ve výše uvedeném prohlášení jsme použili několik operátorů BETWEEN a operátorů OR. Z tabulky zaměstnanců jsme získali ID zaměstnance, jméno, příjmení, plat, oddělení a ID manažera. První operátor BETWEEN se používá k načtení výše uvedených podrobností o těch zaměstnancích, jejichž název oddělení je mezi Java a Oracle. Po prvním operátoru BETWEEN se přepne na jiný operátor BETWEEN, který se používá k načtení výše uvedených údajů o těch zaměstnancích, jejichž mzda je mezi 45000 a 55000. Výše uvedený výpis zobrazí oba záznamy načtené operátorem BETWEEN, protože jsme použili operátor OR v prohlášení.
Výstup:
ID ZAMĚSTNANCE | FIRST_NAME | LAST_NAME | PLAT | ODDĚLENÍ | ID SPRÁVCE |
1001 | Vaibhav | Sharma | 65 000 | ORACLE | 1 |
1002 | Nikhil | Vani | 60 000 | ORACLE | 1 |
1003 | Vaibhavi | Mishra | 50 000 | FMW | 2 |
2001 | Ruchika | Jain | 55500 | ORACLE | 1 |
2003 | Bhavesh | Jain | 50 000 | TESTOVÁNÍ | 4 |
3001 | Deepam | Jauhari | 55500 | JAVA | 3 |
3002 | ANUJA | WANRE | 50500 | FMW | 2 |
3003 | Pranoti | Shende | 58500 | JAVA | 3 |
Příklad 4: Napište dotaz pro zobrazení ID zaměstnance, jména, příjmení, platu a města a ID manažera z tabulky zaměstnanců, jejichž město zaměstnance je mezi Chandigarh a Pune a plat mezi 45 000 a 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;
Ve výše uvedeném prohlášení jsme použili několik operátorů BETWEEN a operátorů OR. Z tabulky zaměstnanců jsme získali ID zaměstnance, jméno, příjmení, plat, město a ID manažera. První operátor BETWEEN se používá k načtení výše uvedených podrobností o těch zaměstnancích, jejichž město je mezi Chandigarh a Pune. Po prvním operátoru BETWEEN se přepne na jiného operátora BETWEEN, který se používá k načtení výše uvedených údajů o těch zaměstnancích, jejichž plat je mezi 45 000 a 60 000. Výše uvedený výpis zobrazí pouze záznamy zaměstnanců, jejichž název města mezi Chandigarh a Pune a Plat mezi 45 000 a 60 000, protože jsme použili operátor AND.
Výstup:
ID ZAMĚSTNANCE | FIRST_NAME | LAST_NAME | PLAT | MĚSTO | ID SPRÁVCE |
1002 | Nikhil | Vani | 60 000 | NOIDA | 1 |
1003 | Vaibhavi | Mishra | 50 000 | JAIPUR | 2 |
2001 | Ruchika | Jain | 55500 | CHANDIgarH | 1 |
2003 | Bhavesh | Jain | 50 000 | MUMBAI | 4 |
3001 | Deepam | Jauhari | 55500 | PUNE | 3 |
3002 | ANUJA | WANRE | 50500 | JAIPUR | 2 |
3003 | Pranoti | Shende | 58500 | MUMBAI | 3 |
Příklad 5: Napište dotaz pro zobrazení ID zaměstnance, křestního jména, příjmení, platu a města z tabulky zaměstnanců, kde je plat zaměstnanců mezi 50 000 a 65 000 řazen podle města.
SELECT EMPLOYEEID, FIRST_NAME, LAST_NAME, SALARY, CITY, MANAGERID FROM EMPLOYEE WHERE CITY BETWEEN 'CHANDIGARH' AND 'PUNE' AND SALARY BETWEEN 45000 AND 60000;
Ve výše uvedeném příkazu jsme získali ID zaměstnance, jméno, příjmení, plat a město z tabulky zaměstnanců těch zaměstnanců, jejichž plat je mezi 50 000 a 65 000. Výsledek jsme zobrazili ve vzestupném pořadí podle sloupce města.
Výstup:
ID ZAMĚSTNANCE | FIRST_NAME | LAST_NAME | PLAT | MĚSTO |
2001 | Ruchika | Jain | 55500 | CHANDIgarH |
1003 | Vaibhavi | Mishra | 50 000 | JAIPUR |
3002 | ANUJA | WANRE | 50500 | JAIPUR |
2003 | Bhavesh | Jain | 50 000 | MUMBAI |
3003 | Pranoti | Shende | 58500 | MUMBAI |
4001 | RAJESH | GOUD | 60500 | MUMBAI |
1002 | Nikhil | Vani | 60 000 | NOIDA |
1001 | Vaibhav | Sharma | 65 000 | PUNE |
3001 | Deepam | Jauhari | 55500 | PUNE |
Příklad 6: Napište dotaz pro zobrazení ID zaměstnance, jména, příjmení, platu a města, kde je plat zaměstnance mezi 45 000 a 65 000 a kde město zaměstnance pouze „Bombaj“, Pune“.
SELECT EMPLOYEEID, FIRST_NAME, LAST_NAME, SALARY, CITY, MANAGERID FROM EMPLOYEE WHERE CITY BETWEEN 'CHANDIGARH' AND 'PUNE' AND SALARY BETWEEN 45000 AND 60000;
Ve výše uvedeném prohlášení jsme získali ID zaměstnance, jméno, příjmení, plat a město z tabulky zaměstnanců těch zaměstnanců, jejichž plat zaměstnanců je mezi 45 000 a 65 000 a město zahrnuje pouze Bombaj a Pune.
Výstup:
ID ZAMĚSTNANCE | FIRST_NAME | LAST_NAME | MĚSTO | PLAT |
1001 | Vaibhav | Sharma | PUNE | 65 000 |
2003 | Bhavesh | Jain | MUMBAI | 50 000 |
3001 | Deepam | Jauhari | PUNE | 55500 |
3003 | Pranoti | Shende | MUMBAI | 58500 |
4001 | RAJESH | GOUD | MUMBAI | 60500 |
MEZ OPERÁTORA S AKTUALIZOVANÝM PROHLÁŠENÍM
Příkaz UPDATE upravuje data přítomná v tabulkách SQL. Operátor BETWEEN použijeme s příkazem UPDATE k úpravě záznamů, které splňují rozsah uvedený v příkazu.
Syntaxe operátoru BETWEEN s příkazem UPDATE:
UPDATE TABLE_NAME SET COLUMN_NAME = VALUES WHERE COLUMN_NAME BETWEEN VALUE1 AND VALUE2;
Zvažte následující tabulky spolu s danými záznamy.
ID ZAMĚSTNANCE | FIRST_NAME | LAST_NAME | PLAT | MĚSTO | ODDĚLENÍ | ID SPRÁVCE | VĚK | DOJ |
1001 | Vaibhav | Sharma | 65 000 | PUNE | ORACLE | 1 | 23 | 20. 9. 2021 |
1002 | Nikhil | Vani | 60 000 | NOIDA | ORACLE | 1 | 21 | 23. 9. 2021 |
1003 | Vaibhavi | Mishra | 50 000 | JAIPUR | FMW | 2 | 22 | 2021-09-30 |
2001 | Ruchika | Jain | 55500 | CHANDIgarH | ORACLE | 1 | 22 | 2021-09-30 |
2002 | Prachi | Sharma | 65500 | PUNE | FMW | 2 | 23 | 20. 9. 2021 |
2003 | Bhavesh | Jain | 50 000 | MUMBAI | TESTOVÁNÍ | 4 | 21 | 23. 9. 2021 |
3001 | Deepam | Jauhari | 55500 | PUNE | JAVA | 3 | 21 | 23. 9. 2021 |
3002 | ANUJA | WANRE | 50500 | JAIPUR | FMW | 2 | 22 | 2021-09-30 |
3003 | Pranoti | Shende | 58500 | MUMBAI | JAVA | 3 | 23 | 20. 9. 2021 |
4001 | RAJESH | GOUD | 60500 | MUMBAI | TESTOVÁNÍ | 4 | 23 | 20. 9. 2021 |
Příklad 1: Napište dotaz na úpravu platu zaměstnance 1,2krát, jehož město zaměstnanců je mezi Bombají a Noidou.
UPDATE EMPLOYEE SET SALARY = SALARY * 1.2 WHERE CITY BETWEEN ‘MUMBAI’ AND ‘NOIDA’;
Ve výše uvedeném prohlášení zvyšujeme plat zaměstnanců o 1,2 těm, jejichž město leží mezi Bombají a Pune.
Pro křížovou kontrolu, zda se mzda zaměstnanců aktualizuje nebo ne úspěšně, použijeme příkaz SELECT:
SELECT EMPLOYEEID, SALARY, CITY FROM EMPLOYEE WHERE CITY BETWEEN ‘MUMBAI’ AND ’NOIDA’;
ID ZAMĚSTNANCE | PLAT | MĚSTO |
1002 | 86400 | NOIDA |
2003 | 86400 | MUMBAI |
3003 | 84240 | MUMBAI |
4001 | 87210 | MUMBAI |
Příklad 2: Napište dotaz a aktualizujte město zaměstnance, jehož datum nástupu je mezi 20. 9. 2021 a 22. 9. 2021 a plat je mezi 78500 a 85000.
UPDATE EMPLOYEE SET CITY = 'DELHI' WHERE DOJ BETWEEN '2021-09-20' AND '2021-09-22' AND SALARY BETWEEN 78500 AND 85000;
Ve výše uvedeném prohlášení jsme použili několik operátorů BETWEEN. Nastavujeme město zaměstnanců na Dillí těch zaměstnanců, jejichž datum nástupu je mezi '2021-09-20' A '2021-09-22' a další mezi bude kontrolovat, jejichž plat je mezi 78500 a 85000. Pokud oba operátor BETWEEN splňuje pouze pro zaměstnance, pak se název města zaměstnance změní.
Pro křížovou kontrolu, zda se mzda zaměstnanců aktualizuje nebo ne úspěšně, použijeme příkaz SELECT:
SELECT EMPLOYEEID, CITY, SALARY, DOJ FROM EMPLOYEE WHERE DOJ BETWEEN '2021-09-20' AND '2021-09-22' AND SALARY BETWEEN 78500 AND 85000;
ID ZAMĚSTNANCE | MĚSTO | PLAT | DOJ |
2002 | DELHI | 786400 | 20. 9. 2021 |
3003 | DELHI | 84240 | 20. 9. 2021 |
MEZ OPERÁTORA S SMAZAT PROHLÁŠENÍ
Příkaz DELETE se používá k odstranění záznamů z tabulky SQL. Operátor BETWEEN používáme s příkazem DELETE k odstranění záznamů, které splňují rozsah uvedený v příkazu.
Syntaxe operátoru BETWEEN s příkazem DELETE:
DELETE FROM TABLE_NAME WHERE COLUMN_NAME BETWEEN VALUE1 AND VALUE2;
Zvažte následující tabulky spolu s danými záznamy.
ID ZAMĚSTNANCE | FIRST_NAME | LAST_NAME | PLAT | MĚSTO | ODDĚLENÍ | ID SPRÁVCE | VĚK | DOJ |
1001 | Vaibhav | Sharma | 78 000 | PUNE | ORACLE | 1 | 23 | 20. 9. 2021 |
1002 | Nikhil | Vani | 86400 | NOIDA | ORACLE | 1 | 21 | 23. 9. 2021 |
1003 | Vaibhavi | Mishra | 50 000 | JAIPUR | FMW | 2 | 22 | 2021-09-30 |
2001 | Ruchika | Jain | 55500 | CHANDIgarH | ORACLE | 1 | 22 | 2021-09-30 |
2002 | Prachi | Sharma | 78600 | DELHI | FMW | 2 | 23 | 20. 9. 2021 |
2003 | Bhavesh | Jain | 86400 | MUMBAI | TESTOVÁNÍ | 4 | 21 | 23. 9. 2021 |
3001 | Deepam | Jauhari | 66600 | PUNE | JAVA | 3 | 21 | 23. 9. 2021 |
3002 | ANUJA | WANRE | 60600 | JAIPUR | FMW | 2 | 22 | 2021-09-30 |
3003 | Pranoti | Shende | 84240 | DELHI | JAVA | 3 | 23 | 20. 9. 2021 |
4001 | RAJESH | GOUD | 87120 | MUMBAI | TESTOVÁNÍ | 4 | 23 | 20. 9. 2021 |
Příklad 1: Napište dotaz na odstranění údajů o zaměstnanci z tabulky zaměstnanců těch zaměstnanců, jejichž plat je mezi 45 000 a 65 000.
DELETE FROM EMPLOYEE WHERE SALARY BETWEEN 45000 AND 65000;
Ve výše uvedeném prohlášení odstraňujeme údaje o zaměstnancích těch zaměstnanců, jejichž plat je mezi 45 000 a 65 000.
Pro křížovou kontrolu, zda byly údaje o zaměstnanci odstraněny nebo neúspěšně, použijeme příkaz SELECT:
SELECT * FROM EMPLOYEE;
ID ZAMĚSTNANCE | FIRST_NAME | LAST_NAME | PLAT | MĚSTO | ODDĚLENÍ | ID SPRÁVCE | VĚK | DOJ |
1001 | Vaibhav | Sharma | 78 000 | PUNE | ORACLE | 1 | 23 | 20. 9. 2021 |
1002 | Nikhil | Vani | 86400 | NOIDA | ORACLE | 1 | 21 | 23. 9. 2021 |
2002 | Prachi | Sharma | 78600 | DELHI | FMW | 2 | 23 | 20. 9. 2021 |
2003 | Bhavesh | Jain | 86400 | MUMBAI | TESTOVÁNÍ | 4 | 21 | 23. 9. 2021 |
3001 | Deepam | Jauhari | 66600 | PUNE | JAVA | 3 | 21 | 23. 9. 2021 |
3003 | Pranoti | Shende | 84240 | DELHI | JAVA | 3 | 23 | 20. 9. 2021 |
4001 | RAJESH | GOUD | 87120 | MUMBAI | TESTOVÁNÍ | 4 | 23 | 20. 9. 2021 |
Příklad 2: Napište dotaz na odstranění údajů o zaměstnanci z tabulky zaměstnanců těch zaměstnanců, jejichž město je mezi Dillí a Pune.
DELETE FROM EMPLOYEE WHERE CITY BETWEEN ‘DELHI’ AND ‘PUNE’;
Ve výše uvedeném prohlášení odstraňujeme údaje o zaměstnancích těch zaměstnanců, jejichž město je mezi Dillí a Pune.
Pro křížovou kontrolu, zda byly údaje o zaměstnanci odstraněny nebo neúspěšně, použijeme příkaz SELECT:
SELECT * FROM EMPLOYEE;