SQL Between operator är en logisk operator i Structured Query Language. Operatorn Between används för att hämta data inom det intervall som anges i villkoret i frågan.
SELECT mellan operatorer används för att hämta data:text, nummer eller datum.
Mellan medel inom de två värdena, så mellan operatörer inkluderar två värden:ett startvärde och ett slutvärde.
Vi kan använda mellan operatorn med Select-satsen i where-satsen
Vi kan också använda mellan operatör med Delete statement och update statement.
I Delete Statement använder vi operatorn mellan för att ta bort värdena mellan de två värdena eller specificerade inom intervallet och med Update-satsen för att ändra värdena.
Syntax för BETWEEN Operator i SQL
SELECT COLUMNNAME1, COLUMNAME2 FROM TABLENAME WHERE COLUMNNAME BETWEEN VAL_1 AND VAL_2
Här är val_1 startvärdet och val_2 är dess slutvärde
Låt oss förstå operatorn BETWEEN i SQL med exempel.
MELLAN OPERATÖR MED VALT UTTALANDE:-
SELECT-satser används för att hämta data från SQL-tabellen. Vi använde operatorn BETWEEN med SELECT-satsen för att hämta posterna mellan två värden från SQL-tabellen.
Betrakta följande tabeller tillsammans med de givna posterna.
ANSTÄLLDA ID | FIRST_NAME | LAST_NAME | LÖN | STAD | AVDELNING | MANAGERID | ÅLDER | DOJ |
1001 | Vaibhav | Sharma | 65 000 | PUNE | ORACLE | 1 | 23 | 2021-09-20 |
1002 | Nikhil | Vani | 60 000 | NOIDA | ORACLE | 1 | 21 | 2021-09-23 |
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 | 2021-09-20 |
2003 | Bhavesh | Jain | 50 000 | MUMBAI | TESTER | 4 | 21 | 2021-09-23 |
3001 | Deepam | Jauhari | 55500 | PUNE | JAVA | 3 | 21 | 2021-09-23 |
3002 | ANUJA | WANRE | 50500 | JAIPUR | FMW | 2 | 22 | 2021-09-30 |
3003 | Pranoti | Shende | 58500 | MUMBAI | JAVA | 3 | 23 | 2021-09-20 |
4001 | RAJESH | GOUD | 60500 | MUMBAI | TESTER | 4 | 23 | 2021-09-20 |
Exempel 1: Skriv en fråga för att visa poster från personaltabellen vars anställdas lön är mellan 48500 och 60000.
SELECT * FROM EMPLOYEE WHERE SALARY BETWEEN 48500 AND 60000;
I ovanstående uttalande hämtade vi alla detaljer från personaltabellen vars anställdas lön är mellan 48500 och 60000.
Utdata:
ANSTÄLLDA ID | FIRST_NAME | LAST_NAME | LÖN | STAD | AVDELNING | MANAGERID | ÅLDER | DOJ |
1002 | Nikhil | Vani | 60 000 | NOIDA | ORACLE | 1 | 21 | 2021-09-23 |
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 | TESTER | 4 | 21 | 2021-09-23 |
3001 | Deepam | Jauhari | 55500 | PUNE | JAVA | 3 | 21 | 2021-09-23 |
3002 | ANUJA | WANRE | 50500 | JAIPUR | FMW | 2 | 22 | 2021-09-30 |
3003 | Pranoti | Shende | 58500 | MUMBAI | JAVA | 3 | 23 | 2021-09-20 |
Exempel 2: Skriv en fråga för att visa medarbetar-id, förnamn, efternamn, lön och stad från anställdstabell vars anställdas stad ligger mellan Mumbai och Pune.
SELECT EMPLOYEEID, FIRST_NAME, LAST_NAME, SALARY, CITY FROM EMPLOYEE WHERE CITY BETWEEN 'MUMBAI' AND 'PUNE';
I uttalandet ovan hämtade vi anställd-id, anställdas namn, anställds stad och lön från personaltabellen för de anställda vars stadsstandard mellan Mumbai och Pune.
Utdata:
ANSTÄLLDA ID | FIRST_NAME | LAST_NAME | LÖN | STAD |
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 |
Exempel 3: Skriv en fråga för att visa medarbetar-id, förnamn, efternamn, lön och avdelnings- och chefs-id från anställdstabell vars personalavdelning är mellan Java och Oracle eller lön mellan 45 000 och 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;
Vi har använt flera BETWEEN-operatorer och OR-operatorer i ovanstående uttalande. Vi hämtade anställd-id, förnamn, efternamn, lön, avdelning och chefs-id från anställdstabellen. Den första BETWEEN-operatorn används för att hämta ovanstående uppgifter om de anställda vars avdelningsnamn är mellan Java och Oracle. Efter den första MELLAN-operatören kommer den att byta till en annan MELLAN-operatör, som används för att hämta ovanstående uppgifter om de anställda vars lön är mellan 45 000 och 55 000. Ovanstående uttalande kommer att visa både MELLAN operatörens hämtade poster eftersom vi använde OR-operatören i uttalande.
Utdata:
ANSTÄLLDA ID | FIRST_NAME | LAST_NAME | LÖN | AVDELNING | MANAGERID |
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 | TESTER | 4 |
3001 | Deepam | Jauhari | 55500 | JAVA | 3 |
3002 | ANUJA | WANRE | 50500 | FMW | 2 |
3003 | Pranoti | Shende | 58500 | JAVA | 3 |
Exempel 4: Skriv en fråga för att visa medarbetar-id, förnamn, efternamn, lön och stad och chefs-id från anställdstabell vars anställdas stad ligger mellan Chandigarh och Pune och lön mellan 45 000 och 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;
Vi har använt flera BETWEEN-operatorer och OR-operatorer i ovanstående uttalande. Vi hämtade anställd-id, förnamn, efternamn, lön, stad och chefs-id från anställdstabellen. Den första BETWEEN-operatören används för att hämta ovanstående uppgifter om de anställda vars stad är mellan Chandigarh och Pune. Efter den första MELLAN-operatören kommer den att byta till en annan MELLAN-operatör, som används för att hämta ovanstående uppgifter om de anställda vars lön är mellan 45 000 och 60 000. Ovanstående uttalande visar endast de anställdas register vars ortsnamn mellan Chandigarh och Pune och Lön mellan 45000 och 60000 eftersom vi använde AND-operator.
Utdata:
ANSTÄLLDA ID | FIRST_NAME | LAST_NAME | LÖN | STAD | MANAGERID |
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 |
Exempel 5: Skriv en fråga för att visa anställd-id, förnamn, efternamn, lön och stad från anställdstabell där anställdas lön mellan 50 000 och 65 000 beställs per stad.
SELECT EMPLOYEEID, FIRST_NAME, LAST_NAME, SALARY, CITY, MANAGERID FROM EMPLOYEE WHERE CITY BETWEEN 'CHANDIGARH' AND 'PUNE' AND SALARY BETWEEN 45000 AND 60000;
I ovanstående uttalande hämtade vi anställd-id, förnamn, efternamn, lön och stad från personaltabellen för de anställda vars lön är mellan 50 000 och 65 000. Vi visade resultatet i stigande ordning efter stadskolumnen.
Utdata:
ANSTÄLLDA ID | FIRST_NAME | LAST_NAME | LÖN | STAD |
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 |
Exempel 6: Skriv en fråga för att visa medarbetar-id, förnamn, efternamn, lön och ort där de anställdas lön är mellan 45 000 och 65 000 och där den anställdes stad endast är "Mumbai", Pune".
SELECT EMPLOYEEID, FIRST_NAME, LAST_NAME, SALARY, CITY, MANAGERID FROM EMPLOYEE WHERE CITY BETWEEN 'CHANDIGARH' AND 'PUNE' AND SALARY BETWEEN 45000 AND 60000;
I ovanstående uttalande hämtade vi anställd-id, förnamn, efternamn, lön och stad från personaltabellen för de anställda vars anställdas lön är mellan 45 000 och 65 000 och stad som bara inkluderar Mumbai och Pune.
Utdata:
ANSTÄLLDA ID | FIRST_NAME | LAST_NAME | STAD | LÖN |
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 |
MELLAN OPERATÖR MED UPPDATERINGSUTTALANDE
UPDATE-satsen modifierar data som finns i SQL-tabellerna. Vi kommer att använda operatorn BETWEEN med UPDATE-satsen för att modifiera de poster som uppfyller intervallet som anges i satsen.
Syntax för operatorn BETWEEN med UPDATE-satsen:
UPDATE TABLE_NAME SET COLUMN_NAME = VALUES WHERE COLUMN_NAME BETWEEN VALUE1 AND VALUE2;
Betrakta följande tabeller tillsammans med de givna posterna.
ANSTÄLLDA ID | FIRST_NAME | LAST_NAME | LÖN | STAD | AVDELNING | MANAGERID | ÅLDER | DOJ |
1001 | Vaibhav | Sharma | 65 000 | PUNE | ORACLE | 1 | 23 | 2021-09-20 |
1002 | Nikhil | Vani | 60 000 | NOIDA | ORACLE | 1 | 21 | 2021-09-23 |
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 | 2021-09-20 |
2003 | Bhavesh | Jain | 50 000 | MUMBAI | TESTER | 4 | 21 | 2021-09-23 |
3001 | Deepam | Jauhari | 55500 | PUNE | JAVA | 3 | 21 | 2021-09-23 |
3002 | ANUJA | WANRE | 50500 | JAIPUR | FMW | 2 | 22 | 2021-09-30 |
3003 | Pranoti | Shende | 58500 | MUMBAI | JAVA | 3 | 23 | 2021-09-20 |
4001 | RAJESH | GOUD | 60500 | MUMBAI | TESTER | 4 | 23 | 2021-09-20 |
Exempel 1: Skriv en fråga för att ändra den anställdes lön med 1,2 gånger vars anställdas stad ligger mellan Mumbai och Noida.
UPDATE EMPLOYEE SET SALARY = SALARY * 1.2 WHERE CITY BETWEEN ‘MUMBAI’ AND ‘NOIDA’;
I ovanstående uttalande ökar vi de anställdas löner med 1,2 av dem vars stad ligger mellan Mumbai och Pune.
För att korskontrollera om lönen för anställda har uppdaterats eller inte framgångsrikt kommer vi att använda SELECT-satsen:
SELECT EMPLOYEEID, SALARY, CITY FROM EMPLOYEE WHERE CITY BETWEEN ‘MUMBAI’ AND ’NOIDA’;
ANSTÄLLDA ID | LÖN | STAD |
1002 | 86400 | NOIDA |
2003 | 86400 | MUMBAI |
3003 | 84240 | MUMBAI |
4001 | 87210 | MUMBAI |
Exempel 2: Skriv en fråga för att uppdatera den anställdes stad vars anslutningsdatum är mellan 2021-09-20 och 2021-09-22 och lönen är mellan 78500 och 85000.
UPDATE EMPLOYEE SET CITY = 'DELHI' WHERE DOJ BETWEEN '2021-09-20' AND '2021-09-22' AND SALARY BETWEEN 78500 AND 85000;
Vi har använt flera BETWEEN-operatorer i uttalandet i ovanstående uttalande. Vi sätter anställdas stad till Delhi för de anställda vars anslutningsdatum är mellan '2021-09-20' OCH '2021-09-22' och en annan mellan kommer att kontrollera vars lön är mellan 78500 och 85000. Om båda operatören BETWEEN uppfyller villkoret endast för den anställde, då ändras den anställdes stadnamn.
För att korskontrollera om lönen för anställda har uppdaterats eller inte framgångsrikt kommer vi att använda SELECT-satsen:
SELECT EMPLOYEEID, CITY, SALARY, DOJ FROM EMPLOYEE WHERE DOJ BETWEEN '2021-09-20' AND '2021-09-22' AND SALARY BETWEEN 78500 AND 85000;
ANSTÄLLDA ID | STAD | LÖN | DOJ |
2002 | DELHI | 786400 | 2021-09-20 |
3003 | DELHI | 84240 | 2021-09-20 |
MELLAN OPERATÖR MED DELETE-UTTALANDE
DELETE-satsen används för att ta bort posterna från SQL-tabellen. Vi använder operatorn BETWEEN med en DELETE-sats för att radera de poster som uppfyller intervallet som anges i satsen.
Syntax för operatorn BETWEEN med DELETE-satsen:
DELETE FROM TABLE_NAME WHERE COLUMN_NAME BETWEEN VALUE1 AND VALUE2;
Betrakta följande tabeller tillsammans med de givna posterna.
ANSTÄLLDA ID | FIRST_NAME | LAST_NAME | LÖN | STAD | AVDELNING | MANAGERID | ÅLDER | DOJ |
1001 | Vaibhav | Sharma | 78000 | PUNE | ORACLE | 1 | 23 | 2021-09-20 |
1002 | Nikhil | Vani | 86400 | NOIDA | ORACLE | 1 | 21 | 2021-09-23 |
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 | 2021-09-20 |
2003 | Bhavesh | Jain | 86400 | MUMBAI | TESTER | 4 | 21 | 2021-09-23 |
3001 | Deepam | Jauhari | 66600 | PUNE | JAVA | 3 | 21 | 2021-09-23 |
3002 | ANUJA | WANRE | 60600 | JAIPUR | FMW | 2 | 22 | 2021-09-30 |
3003 | Pranoti | Shende | 84240 | DELHI | JAVA | 3 | 23 | 2021-09-20 |
4001 | RAJESH | GOUD | 87120 | MUMBAI | TESTER | 4 | 23 | 2021-09-20 |
Exempel 1: Skriv en fråga för att ta bort personaluppgifterna från personaltabellen för de anställda vars lön är mellan 45 000 och 65 000.
DELETE FROM EMPLOYEE WHERE SALARY BETWEEN 45000 AND 65000;
I uttalandet ovan tar vi bort personaluppgifterna för de anställda vars lön är mellan 45 000 och 65 000.
För att korskontrollera om anställningsuppgifterna har raderats eller inte framgångsrikt använder vi SELECT-satsen:
SELECT * FROM EMPLOYEE;
ANSTÄLLDA ID | FIRST_NAME | LAST_NAME | LÖN | STAD | AVDELNING | MANAGERID | ÅLDER | DOJ |
1001 | Vaibhav | Sharma | 78000 | PUNE | ORACLE | 1 | 23 | 2021-09-20 |
1002 | Nikhil | Vani | 86400 | NOIDA | ORACLE | 1 | 21 | 2021-09-23 |
2002 | Prachi | Sharma | 78600 | DELHI | FMW | 2 | 23 | 2021-09-20 |
2003 | Bhavesh | Jain | 86400 | MUMBAI | TESTER | 4 | 21 | 2021-09-23 |
3001 | Deepam | Jauhari | 66600 | PUNE | JAVA | 3 | 21 | 2021-09-23 |
3003 | Pranoti | Shende | 84240 | DELHI | JAVA | 3 | 23 | 2021-09-20 |
4001 | RAJESH | GOUD | 87120 | MUMBAI | TESTER | 4 | 23 | 2021-09-20 |
Exempel 2: Skriv en fråga för att ta bort personaluppgifterna från personaltabellen för de anställda vars stad ligger mellan Delhi och Pune.
DELETE FROM EMPLOYEE WHERE CITY BETWEEN ‘DELHI’ AND ‘PUNE’;
I uttalandet ovan tar vi bort personaluppgifterna för de anställda vars stad ligger mellan Delhi och Pune.
För att korskontrollera om anställningsuppgifterna har raderats eller inte framgångsrikt använder vi SELECT-satsen:
SELECT * FROM EMPLOYEE;