logo

Jak używać BETWEEN w SQL

W tym artykule SQL dowiesz się, jak używać słowa kluczowego BETWEEN w instrukcjach SQL w bazie danych. Tutaj omówimy również szczegółowo operator NOT BETWEEN.

Co jest pomiędzy w SQL?

Słowo kluczowe BETWEEN jest operatorem w ustrukturyzowanym języku zapytań. Umożliwia użytkownikom bazy danych dostęp do wartości z określonego zakresu.

Operatora BETWEEN możemy łatwo używać w klauzuli WHERE zapytań SQL INSERT, UPDATE, SELECT i DELETE.

Ten operator zwraca wartość PRAWDA, gdy wartość kolumny jest mniejsza lub równa dużej wartości i większa lub równa niskiej wartości. Wartość początkowa i końcowa zawarta jest w operatorze BETWEEN.

sformatuj datę w Javie

Składnia operatora logicznego BETWEEN:

 SELECT Column_Name_1, Column_Name_2, Column_Name_3, ......, Column_Name_N FROM Table_Name WHERE Column_Name BETWEEN Value_1 AND Value_2; 

W składni Wartość_1 określa wartość początkową zakresu, a Wartość_2 określa wartość końcową zakresu.

Jeśli chcesz użyć operatora BETWEEN w instrukcjach SQL, musisz wykonać następujące kroki w tej samej kolejności:

  1. Utwórz bazę danych w systemie.
  2. Utwórz nową tabelę SQL.
  3. Wstaw dane do tabeli.
  4. Wyświetl wstawione dane.
  5. Użyj operatora BETWEEN, aby wyświetlić dane tabeli na wiele sposobów.

Teraz wyjaśnimy pokrótce każdy krok na najlepszym przykładzie SQL:

Krok 1: Utwórz prostą nową bazę danych

Najpierw musisz utworzyć nową bazę danych w bazie danych Structured Query Language. Następująca instrukcja CREATE tworzy nowy IIT_Kolegium Baza danych:

 CREATE Database IIT_College; 

Krok 2: Utwórz nową tabelę

Teraz użyj następującej składni SQL, aby utworzyć nową tabelę w bazie danych:

 CREATE TABLE table_name ( 1st_Column data type (character_size of 1st Column), 2nd_Column data type (character_size of the 2nd column ), 3rd_Column data type (character_size of the 3rd column), ... 
 Nth_Column data type (character_size of the Nth column) ); 

Następująca instrukcja CREATE tworzy plik Informacje o wydziale stolik w IIT_Kolegium Baza danych:

spróbuj złapać blok Java
 CREATE TABLE Faculty_Info ( Faculty_ID INT NOT NULL PRIMARY KEY, Faculty_First_Name VARCHAR (100), Faculty_Last_Name VARCHAR (100), Faculty_Dept_Id INT NOT NULL, Faculty_Joining_Date Varchar (80), Faculty_City Varchar (80), Faculty_Salary INT ); 

Krok 3: Wstaw dane do tabeli

Następujące zapytania INSERT wstawiają rekordy wydziałów do tabeli Faculty_Info:

 INSERT INTO Faculty_Info (Faculty_ID, Faculty_First_Name, Faculty_Last_NameFaculty_Dept_Id, Faculty_Joining_Date, Faculty_City, Faculty_Salary) VALUES (1001, Arush, Sharma, 4001, 2020-01-02, Delhi, 20000); INSERT INTO Faculty_Info (Faculty_ID, Faculty_First_Name, Faculty_Last_NameFaculty_Dept_Id, Faculty_Joining_Date, Faculty_City, Faculty_Salary) VALUES (1002, Bulbul, Roy, 4002, 2019-12-31, Delhi, 38000 ); INSERT INTO Faculty_Info (Faculty_ID, Faculty_First_Name, Faculty_Last_NameFaculty_Dept_Id, Faculty_Joining_Date, Faculty_City, Faculty_Salary) VALUES (1004, Saurabh, Sharma, 4001, 2020-10-10, Mumbai, 45000); INSERT INTO Faculty_Info (Faculty_ID, Faculty_First_Name, Faculty_Last_NameFaculty_Dept_Id, Faculty_Joining_Date, Faculty_City, Faculty_Salary) VALUES (1005, Shivani, Singhania, 4001, 2019-07-15, Kolkata, 42000); INSERT INTO Faculty_Info (Faculty_ID, Faculty_First_Name, Faculty_Last_NameFaculty_Dept_Id, Faculty_Joining_Date, Faculty_City, Faculty_Salary) VALUES (1006, Avinash, Sharma, 4002, 2019-11-11, Delhi, 28000); INSERT INTO Faculty_Info (Faculty_ID, Faculty_First_Name, Faculty_Last_NameFaculty_Dept_Id, Faculty_Joining_Date, Faculty_City, Faculty_Salary)VALUES (1007, Shyam, Besas, 4003, 2021-06-21, Lucknow, 35000); 

Krok 4: Wyświetl wstawione dane

Następująca instrukcja SELECT wyświetla na ekranie komputera rekordy tabeli Faculty_Info:

 SELECT * FROM Faculty_Info; 

Identyfikator wydziału Imię_wydziału Wydział_Nazwisko Wydział_Dept_Id Wydział_Dołączenie_Data Wydział_Miasto Wydział_Wynagrodzenie
1001 niedźwiedź Sharma 4001 2020-01-02 Delhi 20000
1002 Bulbul Roy 4002 2019-12-31 Delhi 38000
1004 Saurabh Roy 4001 2020-10-10 Bombaj 45000
1005 Shivani Singapur 4001 15.07.2019 Kalkuta 42000
1006 Avinash Sharma 4002 2019-11-11 Delhi 28000
1007 Shyam Ty całujesz 4003 21.06.2021 Lucknow 35000

Krok 5: Użyj operatora BETWEEN

W poniższym zapytaniu zastosowano operator BETWEEN z danymi liczbowymi:

 SELECT * FROM Faculty_Info WHERE Faculty_salary BETWEEN 25000 AND 40000; 

To zapytanie SELECT pokazuje w wynikach wszystkie wydziały, których pensja mieści się w przedziale od 25 000 do 40 000.

Wynik powyższej instrukcji jest pokazany w następującym wyniku:

Identyfikator wydziału Imię_wydziału Wydział_Nazwisko Wydział_Dept_Id Wydział_Dołączenie_Data Wydział_Miasto Wydział_Wynagrodzenie
1002 Bulbul Roy 4002 2019-12-31 Delhi 38000
1006 Avinash Sharma 4002 2019-11-11 Delhi 28000
1007 Shyam Ty całujesz 4003 21.06.2021 Lucknow 35000

W poniższym zapytaniu zastosowano operator logiczny BETWEEN z wartościami znakowymi lub tekstowymi:

 SELECT * FROM Faculty_Info WHERE Faculty_City BETWEEN D AND L; 

To zapytanie pokazuje historię wszystkich wydziałów, których nazwa miasta zaczyna się na dowolną literę pomiędzy D i L.

Identyfikator wydziału Imię_wydziału Wydział_Nazwisko Wydział_Dept_Id Wydział_Dołączenie_Data Wydział_Miasto Wydział_Wynagrodzenie
1005 Shivani Singapur 4001 15.07.2019 Kalkuta 42000
1006 Avinash Sharma 4002 2019-11-11 Delhi 28000
1007 Shyam Ty całujesz 4003 21.06.2021 Lucknow 35000

W poniższym zapytaniu zastosowano operator logiczny BETWEEN w formacie Date

 SELECT * FROM Faculty_Info WHERE Faculty_Joining_Date BETWEEN 2020-01-02 AND 2021-06-21; 

To zapytanie pokazuje historię wszystkich wydziałów, które dołączyły pomiędzy 2020-01-02 a 21-06-2021.

Identyfikator wydziału Imię_wydziału Wydział_Nazwisko Wydział_Dept_Id Wydział_Dołączenie_Data Wydział_Miasto Wydział_Wynagrodzenie
1001 niedźwiedź Sharma 4001 2020-01-02 Delhi 20000
1004 Saurabh Roy 4001 2020-10-10 Bombaj 45000
1007 Shyam Ty całujesz 4003 21.06.2021 Lucknow 35000

W poniższym zapytaniu zastosowano klauzulę DISTINCT z operatorem BETWEEN w zapytaniu SELECT:

 SELECT DISTINCT (Faculty_City) FROM Faculty_Info WHERE Faculty_Dept_Id BETWEEN 4001 AND 4003; 

Jak używać BETWEEN w SQL

Poniższe zapytanie aktualizuje dane tabeli za pomocą operatora BETWEEN w poleceniu UPDATE:

 UPDATE Faculty_Info SET Faculty_Salary = 60000 WHERE Faculty_Joining_Date BETWEEN 2019-07-15 AND 2021-01-02; 

To zapytanie UPDATE aktualizuje wynagrodzenie tych wydziałów, których data dołączenia przypada pomiędzy

15.07.2019 i 02.01.2021.

Aby sprawdzić wynik powyższego zapytania, wpisz następującą komendę SELECT:

 SELECT * FROM Faculty_Info; 

Identyfikator wydziału Imię_wydziału Wydział_Nazwisko Wydział_Dept_Id Wydział_Dołączenie_Data Wydział_Miasto Wydział_Wynagrodzenie
1001 niedźwiedź Sharma 4001 2020-01-02 Delhi 60000
1002 Bulbul Roy 4002 2019-12-31 Delhi 60000
1004 Saurabh Roy 4001 2020-10-10 Bombaj 45000
1005 Shivani Singapur 4001 15.07.2019 Kalkuta 60000
1006 Avinash Sharma 4002 2019-11-11 Delhi 60000
1007 Shyam Ty całujesz 4003 21.06.2021 Lucknow 35000

Czego NIE ma pomiędzy w SQL?

NOT BETWEEN jest operatorem w Strukturalnym Języku Zapytań, będącym przeciwieństwem operatora BETWEEN. Dzięki temu mamy dostęp do tych wartości z tabeli, które nie mieszczą się w podanym zakresie.

Algorytm sortowania sterty

Operatora NOT BETWEEN można używać w zapytaniach SQL INSERT, UPDATE, SELECT i DELETE.

Poniżej podano składnię operatora NOT BETWEEN w Strukturalnym Języku Zapytań:

 SELECT Column_Name_1, Column_Name_2, Column_Name_3, ......, Column_Name_N FROM Table_Name WHERE Column_Name NOT BETWEEN Value_1 AND Value_2; 

Jeśli chcesz użyć operatora NOT BETWEEN w instrukcjach SQL, musisz wykonać poniższe kroki, jeden po drugim, w tej samej kolejności:

  1. Utwórz bazę danych w systemie.
  2. Utwórz nową tabelę SQL.
  3. Wstaw dane do tabeli.
  4. Wyświetl wstawione dane.
  5. Użyj operatora NIE MIĘDZY, aby wyświetlić określone dane w różnych kolumnach.

Krok 1: Utwórz prostą nową bazę danych

Najpierw musisz utworzyć nową bazę danych w Structured Query Language.

Następujące zapytanie tworzy nowy Przemysł_cywilny Baza danych na serwerze SQL:

 CREATE Database Civil_Industry; 

Krok 2: Utwórz nową tabelę

Poniższe zapytanie tworzy plik Informacje o pracowniku stolik w Przemysł_cywilny Baza danych:

 CREATE TABLE Worker_Info ( Worker_ID INT NOT NULL, Worker_Name VARCHAR (100), Worker_Gender Varchar(20), Worker_Age INT NOT NULL DEFAULT 18, Worker_Address Varchar (80), Worker_Salary INT NOT NULL ); 

Krok 3: Wstaw wartości

runy w PowerShell

Następujące zapytania INSERT wstawiają rekordy pracowników do tabeli Worker_Info:

 INSERT INTO Worker_Info (Worker_ID, Worker_Name, Worker_Gender, Worker_Age, Worker_Address, Worker_Salary) VALUES (1001, Arush, Male, Agra, 35000); INSERT INTO Worker_Info (Worker_ID, Worker_Name, Worker_Gender, Worker_Age, Worker_Address, Worker_Salary) VALUES (1002, Bulbul, Female, Lucknow, 42000); INSERT INTO Worker_Info (Worker_ID, Worker_Name, Worker_Gender, Worker_Age, Worker_Address, Worker_Salary) VALUES (1004, Saurabh, Male, 20, Lucknow, 45000); INSERT INTO Worker_Info (Worker_ID, Worker_Name, Worker_Gender, Worker_Age, Worker_Address, Worker_Salary) VALUES (1005, Shivani, Female, Agra, 28000); INSERT INTO Worker_Info (Worker_ID, Worker_Name, Worker_Gender, Worker_Age, Worker_Address, Worker_Salary) VALUES (1006, Avinash, Male, 22, Delhi, 38000); INSERT INTO Worker_Info (Worker_ID, Worker_Name, Worker_Gender, Worker_Age, Worker_Address, Worker_Salary) VALUES (1007, Shyam, Male, Banglore, 20000); 

Krok 4: Wyświetl dane tabeli

Poniższe zapytanie wyświetla dane tabeli Worker_Info.

 SELECT * FROM Worker_Info; 

Identyfikator pracownika Nazwa_pracownika Pracownik_płeć Pracownik_wiek Adres_pracownika Pracownik_Wynagrodzenie
1001 niedźwiedź Mężczyzna 18 Agra 35000
1002 Bulbul Kobieta 18 Lucknow 42000
1004 Saurabh Mężczyzna 20 Lucknow 45000
1005 Shivani Kobieta 18 Agra 28000
1006 Avinash Mężczyzna 22 Delhi 38000
1007 Shyam Mężczyzna 18 Bangalore 20000

Krok 4: Użyj operatora NOT BETWEEN

W poniższej instrukcji zastosowano operator NOT BETWEEN z danymi liczbowymi:

 SELECT * FROM Worker_Info WHERE Worker_salary NOT BETWEEN 25000 AND 40000; 

To zapytanie SELECT pokazuje w wynikach wszystkich pracowników, których wynagrodzenie nie jest większe lub równe 25000, mniejsze lub równe 40000.

Wynik powyższego zapytania jest pokazany w następującym wyniku:

Identyfikator pracownika Nazwa_pracownika Pracownik_płeć Pracownik_wiek Adres_pracownika Pracownik_Wynagrodzenie
1002 Bulbul Kobieta 18 Lucknow 42000
1004 Saurabh Mężczyzna 20 Lucknow 45000
1007 Shyam Mężczyzna 18 Bangalore 20000

W poniższym zapytaniu zastosowano operator logiczny NOT BETWEEN z wartościami znakowymi lub tekstowymi:

 SELECT * FROM Worker_Info WHERE Worker_Address NOT BETWEEN D AND L; 

To zapytanie pokazuje historię wszystkich Pracowników, których nazwy miast nie zaczynają się na żadną literę pomiędzy D i L.

ID pracownika Nazwa_pracownika Pracownik_płeć Pracownik_wiek Adres_pracownika Pracownik_Wynagrodzenie
1001 niedźwiedź Mężczyzna 18 Agra 35000
1005 Shivani Kobieta 18 Agra 28000
1007 Shyam Mężczyzna 18 Bangalore 20000