sql >> Databasteknik >  >> RDS >> Database

SQL mellan operatörer

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;


  1. Användarkontohantering, roller, behörigheter, autentisering PHP och MySQL - Del 2

  2. SQL Server ROUND()-funktion:Vad det är till för och varför ska du bry dig?

  3. Hur SQLite Quote() fungerar

  4. Använder JShell i Java 9 i NetBeans 9.0, del 2