Toán tử SQL giữa là một toán tử logic trong Ngôn ngữ truy vấn có cấu trúc. Toán tử Giữa được sử dụng để truy xuất dữ liệu trong phạm vi được chỉ định trong điều kiện trong truy vấn.
SELECT giữa các toán tử được sử dụng để truy xuất dữ liệu:văn bản, số hoặc ngày.
Giữa có nghĩa là trong hai giá trị, vì vậy giữa các toán tử bao gồm hai giá trị:giá trị bắt đầu và giá trị kết thúc.
Chúng ta có thể sử dụng giữa toán tử với câu lệnh Select trong mệnh đề where
Chúng ta cũng có thể sử dụng giữa toán tử với câu lệnh Xóa và câu lệnh cập nhật.
Trong câu lệnh Xóa, chúng tôi sử dụng toán tử giữa để xóa các giá trị giữa hai giá trị hoặc được chỉ định trong phạm vi và với câu lệnh Cập nhật để sửa đổi giá trị.
Cú pháp của toán tử GIỮA trong SQL
SELECT COLUMNNAME1, COLUMNAME2 FROM TABLENAME WHERE COLUMNNAME BETWEEN VAL_1 AND VAL_2
Ở đây, val_1 là giá trị bắt đầu và val_2 là giá trị kết thúc của nó
Hãy hiểu toán tử GIỮA trong SQL với các ví dụ.
GIỮA NGƯỜI VẬN HÀNH VỚI BÁO CÁO CHỌN:-
Câu lệnh SELECT được sử dụng để truy xuất dữ liệu từ bảng SQL. Chúng tôi đã sử dụng toán tử BETWEEN với câu lệnh SELECT để tìm nạp các bản ghi giữa hai giá trị từ bảng SQL.
Hãy xem xét các bảng sau cùng với các bản ghi đã cho.
EMPLOYEEID | FIRST_NAME | LAST_NAME | TIỀN LƯƠNG | THÀNH PHỐ | KHOA | MANAGERID | TUỔI | DOJ |
1001 | Vaibhav | Sharma | 65000 | PUNE | ORACLE | 1 | 23 | 2021-09-20 |
1002 | Nikhil | Vani | 60000 | NOIDA | ORACLE | 1 | 21 | 2021-09-23 |
1003 | Vaibhavi | Mishra | 50000 | JAIPUR | FMW | 2 | 22 | 2021-09-30 |
2001 | Ruchika | Jain | 55500 | ĐIỀU CHỈNH | ORACLE | 1 | 22 | 2021-09-30 |
2002 | Thực tế | Sharma | 65500 | PUNE | FMW | 2 | 23 | 2021-09-20 |
2003 | Bhavesh | Jain | 50000 | MUMBAI | KIỂM TRA | 4 | 21 | 2021-09-23 |
3001 | Deepam | Jauhari | 55500 | PUNE | JAVA | 3 | 21 | 2021-09-23 |
3002 | ANUJA | DÂY | 50500 | JAIPUR | FMW | 2 | 22 | 2021-09-30 |
3003 | Pranoti | Shende | 58500 | MUMBAI | JAVA | 3 | 23 | 2021-09-20 |
4001 | RAJESH | MỤC TIÊU | 60500 | MUMBAI | KIỂM TRA | 4 | 23 | 2021-09-20 |
Ví dụ 1: Viết truy vấn để hiển thị các bản ghi từ bảng nhân viên có mức lương của nhân viên từ 48500 đến 60000.
SELECT * FROM EMPLOYEE WHERE SALARY BETWEEN 48500 AND 60000;
Trong báo cáo trên, chúng tôi đã tìm nạp tất cả các chi tiết từ bảng nhân viên có mức lương của nhân viên nằm trong khoảng 48500 đến 60000.
Đầu ra:
EMPLOYEEID | FIRST_NAME | LAST_NAME | TIỀN LƯƠNG | THÀNH PHỐ | KHOA | MANAGERID | TUỔI | DOJ |
1002 | Nikhil | Vani | 60000 | NOIDA | ORACLE | 1 | 21 | 2021-09-23 |
1003 | Vaibhavi | Mishra | 50000 | JAIPUR | FMW | 2 | 22 | 2021-09-30 |
2001 | Ruchika | Jain | 55500 | ĐIỀU CHỈNH | ORACLE | 1 | 22 | 2021-09-30 |
2003 | Bhavesh | Jain | 50000 | MUMBAI | KIỂM TRA | 4 | 21 | 2021-09-23 |
3001 | Deepam | Jauhari | 55500 | PUNE | JAVA | 3 | 21 | 2021-09-23 |
3002 | ANUJA | DÂY | 50500 | JAIPUR | FMW | 2 | 22 | 2021-09-30 |
3003 | Pranoti | Shende | 58500 | MUMBAI | JAVA | 3 | 23 | 2021-09-20 |
Ví dụ 2: Viết truy vấn để hiển thị id nhân viên, tên, họ, lương và thành phố từ bảng nhân viên có thành phố nhân viên nằm giữa Mumbai và Pune.
SELECT EMPLOYEEID, FIRST_NAME, LAST_NAME, SALARY, CITY FROM EMPLOYEE WHERE CITY BETWEEN 'MUMBAI' AND 'PUNE';
Trong tuyên bố trên, chúng tôi đã tìm nạp id nhân viên, tên nhân viên, thành phố của nhân viên và mức lương từ bảng nhân viên của những nhân viên có tiêu chuẩn thành phố giữa Mumbai và Pune.
Đầu ra:
EMPLOYEEID | FIRST_NAME | LAST_NAME | TIỀN LƯƠNG | THÀNH PHỐ |
1001 | Vaibhav | Sharma | 65000 | PUNE |
1002 | Nikhil | Vani | 60000 | NOIDA |
2002 | Thực tế | Sharma | 65500 | PUNE |
2003 | Bhavesh | Jain | 50000 | MUMBAI |
3001 | Deepam | Jauhari | 55500 | PUNE |
3003 | Pranoti | Shende | 58500 | MUMBAI |
4001 | RAJESH | MỤC TIÊU | 60500 | MUMBAI |
Ví dụ 3: Viết truy vấn để hiển thị id nhân viên, họ, tên, tiền lương và id bộ phận và người quản lý từ bảng nhân viên có bộ phận nhân viên nằm giữa Java và Oracle hoặc mức lương từ 45000 đến 55000.
SELECT EMPLOYEEID, FIRST_NAME, LAST_NAME, SALARY, DEPARTMENT, MANAGERID FROM EMPLOYEE WHERE DEPARTMENT BETWEEN 'JAVA' AND 'ORACLE' OR SALARY BETWEEN 45000 AND 55000;
Chúng tôi đã sử dụng nhiều toán tử GIỮA và toán tử HOẶC trong câu lệnh trên. Chúng tôi đã tìm nạp id nhân viên, tên, họ, tiền lương, bộ phận và id người quản lý từ bảng nhân viên. Toán tử BETWEEN đầu tiên được sử dụng để tìm nạp các chi tiết ở trên của những nhân viên có tên bộ phận nằm giữa Java và Oracle. Sau toán tử GIỮA đầu tiên, nó sẽ chuyển sang một toán tử GIỮA khác, được sử dụng để tìm nạp các chi tiết ở trên của những nhân viên có mức lương từ 45000 đến 55000. Câu lệnh trên sẽ hiển thị cả hai toán tử GIỮA các bản ghi được tìm nạp vì chúng tôi đã sử dụng toán tử HOẶC trong tuyên bố.
Đầu ra:
EMPLOYEEID | FIRST_NAME | LAST_NAME | TIỀN LƯƠNG | KHOA | MANAGERID |
1001 | Vaibhav | Sharma | 65000 | ORACLE | 1 |
1002 | Nikhil | Vani | 60000 | ORACLE | 1 |
1003 | Vaibhavi | Mishra | 50000 | FMW | 2 |
2001 | Ruchika | Jain | 55500 | ORACLE | 1 |
2003 | Bhavesh | Jain | 50000 | KIỂM TRA | 4 |
3001 | Deepam | Jauhari | 55500 | JAVA | 3 |
3002 | ANUJA | DÂY | 50500 | FMW | 2 |
3003 | Pranoti | Shende | 58500 | JAVA | 3 |
Ví dụ 4: Viết truy vấn để hiển thị id nhân viên, tên, họ, lương, thành phố và id người quản lý từ bảng nhân viên có thành phố nhân viên nằm giữa Chandigarh và Pune và mức lương từ 45000 đến 60000.
SELECT EMPLOYEEID, FIRST_NAME, LAST_NAME, SALARY, CITY, MANAGERID FROM EMPLOYEE WHERE CITY BETWEEN 'CHANDIGARH' AND 'PUNE' AND SALARY BETWEEN 45000 AND 60000;
Chúng tôi đã sử dụng nhiều toán tử GIỮA và toán tử HOẶC trong câu lệnh trên. Chúng tôi đã tìm nạp id nhân viên, tên, họ, lương, thành phố và id người quản lý từ bảng nhân viên. Toán tử BETWEEN đầu tiên được sử dụng để lấy thông tin chi tiết ở trên của những nhân viên có tên thành phố nằm giữa Chandigarh và Pune. Sau toán tử GIỮA đầu tiên, nó sẽ chuyển sang một toán tử GIỮA khác, được sử dụng để lấy thông tin chi tiết ở trên của những nhân viên có mức lương từ 45000 đến 60000. Câu lệnh trên sẽ chỉ hiển thị những hồ sơ nhân viên có tên thành phố giữa Chandigarh và Pune và Lương từ 45000 đến 60000 vì chúng tôi đã sử dụng toán tử AND.
Đầu ra:
EMPLOYEEID | FIRST_NAME | LAST_NAME | TIỀN LƯƠNG | THÀNH PHỐ | MANAGERID |
1002 | Nikhil | Vani | 60000 | NOIDA | 1 |
1003 | Vaibhavi | Mishra | 50000 | JAIPUR | 2 |
2001 | Ruchika | Jain | 55500 | ĐIỀU CHỈNH | 1 |
2003 | Bhavesh | Jain | 50000 | MUMBAI | 4 |
3001 | Deepam | Jauhari | 55500 | PUNE | 3 |
3002 | ANUJA | DÂY | 50500 | JAIPUR | 2 |
3003 | Pranoti | Shende | 58500 | MUMBAI | 3 |
Ví dụ 5: Viết truy vấn để hiển thị Id nhân viên, Tên, Họ, Mức lương và thành phố từ bảng nhân viên trong đó mức lương của nhân viên từ 50000 đến 65000 theo thứ tự theo thành phố.
SELECT EMPLOYEEID, FIRST_NAME, LAST_NAME, SALARY, CITY, MANAGERID FROM EMPLOYEE WHERE CITY BETWEEN 'CHANDIGARH' AND 'PUNE' AND SALARY BETWEEN 45000 AND 60000;
Trong câu lệnh trên, chúng tôi đã tìm nạp id nhân viên, họ, tên, lương và thành phố từ bảng nhân viên của những nhân viên có mức lương từ 50000 đến 65000. Chúng tôi hiển thị kết quả theo thứ tự tăng dần theo cột thành phố.
Đầu ra:
EMPLOYEEID | FIRST_NAME | LAST_NAME | TIỀN LƯƠNG | THÀNH PHỐ |
2001 | Ruchika | Jain | 55500 | ĐIỀU CHỈNH |
1003 | Vaibhavi | Mishra | 50000 | JAIPUR |
3002 | ANUJA | DÂY | 50500 | JAIPUR |
2003 | Bhavesh | Jain | 50000 | MUMBAI |
3003 | Pranoti | Shende | 58500 | MUMBAI |
4001 | RAJESH | MỤC TIÊU | 60500 | MUMBAI |
1002 | Nikhil | Vani | 60000 | NOIDA |
1001 | Vaibhav | Sharma | 65000 | PUNE |
3001 | Deepam | Jauhari | 55500 | PUNE |
Ví dụ 6: Viết một truy vấn để hiển thị id nhân viên, họ, tên, lương và thành phố nơi mức lương của nhân viên từ 45000 đến 65000 và nơi chỉ có thành phố của nhân viên là “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;
Trong câu lệnh trên, chúng tôi đã tìm nạp id nhân viên, họ, tên, lương và thành phố từ bảng nhân viên của những nhân viên có mức lương nhân viên từ 45000 đến 65000 và thành phố chỉ bao gồm Mumbai và Pune.
Đầu ra:
EMPLOYEEID | FIRST_NAME | LAST_NAME | THÀNH PHỐ | TIỀN LƯƠNG |
1001 | Vaibhav | Sharma | PUNE | 65000 |
2003 | Bhavesh | Jain | MUMBAI | 50000 |
3001 | Deepam | Jauhari | PUNE | 55500 |
3003 | Pranoti | Shende | MUMBAI | 58500 |
4001 | RAJESH | MỤC TIÊU | MUMBAI | 60500 |
GIỮA NGƯỜI VẬN HÀNH VỚI BÁO CÁO CẬP NHẬT
Câu lệnh UPDATE sửa đổi dữ liệu có trong bảng SQL. Chúng tôi sẽ sử dụng toán tử GIỮA với câu lệnh UPDATE để sửa đổi các bản ghi thỏa mãn phạm vi được chỉ định trong câu lệnh.
Cú pháp của toán tử GIỮA với câu lệnh CẬP NHẬT:
UPDATE TABLE_NAME SET COLUMN_NAME = VALUES WHERE COLUMN_NAME BETWEEN VALUE1 AND VALUE2;
Hãy xem xét các bảng sau cùng với các bản ghi đã cho.
EMPLOYEEID | FIRST_NAME | LAST_NAME | TIỀN LƯƠNG | THÀNH PHỐ | KHOA | MANAGERID | TUỔI | DOJ |
1001 | Vaibhav | Sharma | 65000 | PUNE | ORACLE | 1 | 23 | 2021-09-20 |
1002 | Nikhil | Vani | 60000 | NOIDA | ORACLE | 1 | 21 | 2021-09-23 |
1003 | Vaibhavi | Mishra | 50000 | JAIPUR | FMW | 2 | 22 | 2021-09-30 |
2001 | Ruchika | Jain | 55500 | ĐIỀU CHỈNH | ORACLE | 1 | 22 | 2021-09-30 |
2002 | Thực tế | Sharma | 65500 | PUNE | FMW | 2 | 23 | 2021-09-20 |
2003 | Bhavesh | Jain | 50000 | MUMBAI | KIỂM TRA | 4 | 21 | 2021-09-23 |
3001 | Deepam | Jauhari | 55500 | PUNE | JAVA | 3 | 21 | 2021-09-23 |
3002 | ANUJA | DÂY | 50500 | JAIPUR | FMW | 2 | 22 | 2021-09-30 |
3003 | Pranoti | Shende | 58500 | MUMBAI | JAVA | 3 | 23 | 2021-09-20 |
4001 | RAJESH | MỤC TIÊU | 60500 | MUMBAI | KIỂM TRA | 4 | 23 | 2021-09-20 |
Ví dụ 1: Viết truy vấn để sửa đổi 1,2 lần lương của nhân viên có thành phố của nhân viên nằm giữa Mumbai và Noida.
UPDATE EMPLOYEE SET SALARY = SALARY * 1.2 WHERE CITY BETWEEN ‘MUMBAI’ AND ‘NOIDA’;
Trong tuyên bố trên, chúng tôi tăng 1,2 lương của nhân viên trong số những người có thành phố nằm giữa Mumbai và Pune.
Để kiểm tra chéo mức lương của nhân viên có được cập nhật thành công hay không, chúng ta sẽ sử dụng câu lệnh SELECT:
SELECT EMPLOYEEID, SALARY, CITY FROM EMPLOYEE WHERE CITY BETWEEN ‘MUMBAI’ AND ’NOIDA’;
EMPLOYEEID | TIỀN LƯƠNG | THÀNH PHỐ |
1002 | 86400 | NOIDA |
2003 | 86400 | MUMBAI |
3003 | 84240 | MUMBAI |
4001 | 87210 | MUMBAI |
Ví dụ 2: Viết truy vấn để cập nhật thành phố nhân viên có ngày gia nhập từ 2021-09-20 đến 2021-09-22 và mức lương từ 78500 đến 85000.
UPDATE EMPLOYEE SET CITY = 'DELHI' WHERE DOJ BETWEEN '2021-09-20' AND '2021-09-22' AND SALARY BETWEEN 78500 AND 85000;
Chúng tôi đã sử dụng nhiều toán tử GIỮA trong câu lệnh trong câu lệnh trên. Chúng tôi đang thiết lập thành phố của nhân viên là Delhi của những nhân viên có ngày gia nhập từ '2021-09-20' VÀ '2021-09-22' và một thành phố khác sẽ kiểm tra mức lương của ai trong khoảng 78500 đến 85000. Nếu cả hai nhà điều hành GIỮA thỏa mãn điều kiện chỉ dành cho nhân viên, sau đó tên thành phố của nhân viên sẽ sửa đổi.
Để kiểm tra chéo mức lương của nhân viên có được cập nhật thành công hay không, chúng ta sẽ sử dụng câu lệnh SELECT:
SELECT EMPLOYEEID, CITY, SALARY, DOJ FROM EMPLOYEE WHERE DOJ BETWEEN '2021-09-20' AND '2021-09-22' AND SALARY BETWEEN 78500 AND 85000;
EMPLOYEEID | THÀNH PHỐ | TIỀN LƯƠNG | DOJ |
2002 | DELHI | 786400 | 2021-09-20 |
3003 | DELHI | 84240 | 2021-09-20 |
GIỮA NGƯỜI VẬN HÀNH VỚI BÁO CÁO XÓA
Câu lệnh DELETE được sử dụng để xóa các bản ghi khỏi bảng SQL. Chúng tôi sử dụng toán tử GIỮA với câu lệnh DELETE để xóa các bản ghi thỏa mãn phạm vi được chỉ định trong câu lệnh.
Cú pháp của toán tử BETWEEN với câu lệnh DELETE:
DELETE FROM TABLE_NAME WHERE COLUMN_NAME BETWEEN VALUE1 AND VALUE2;
Hãy xem xét các bảng sau cùng với các bản ghi đã cho.
EMPLOYEEID | FIRST_NAME | LAST_NAME | TIỀN LƯƠNG | THÀNH PHỐ | KHOA | MANAGERID | TUỔI | 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 | 50000 | JAIPUR | FMW | 2 | 22 | 2021-09-30 |
2001 | Ruchika | Jain | 55500 | ĐIỀU CHỈNH | ORACLE | 1 | 22 | 2021-09-30 |
2002 | Thực tế | Sharma | 78600 | DELHI | FMW | 2 | 23 | 2021-09-20 |
2003 | Bhavesh | Jain | 86400 | MUMBAI | KIỂM TRA | 4 | 21 | 2021-09-23 |
3001 | Deepam | Jauhari | 66600 | PUNE | JAVA | 3 | 21 | 2021-09-23 |
3002 | ANUJA | DÂY | 60600 | JAIPUR | FMW | 2 | 22 | 2021-09-30 |
3003 | Pranoti | Shende | 84240 | DELHI | JAVA | 3 | 23 | 2021-09-20 |
4001 | RAJESH | MỤC TIÊU | 87120 | MUMBAI | KIỂM TRA | 4 | 23 | 2021-09-20 |
Ví dụ 1: Viết truy vấn để xóa chi tiết nhân viên khỏi bảng nhân viên của những nhân viên có mức lương từ 45000 đến 65000.
DELETE FROM EMPLOYEE WHERE SALARY BETWEEN 45000 AND 65000;
Trong câu lệnh trên, chúng tôi sẽ xóa thông tin chi tiết về nhân viên của những nhân viên có mức lương từ 45000 đến 65000.
Để kiểm tra chéo xem chi tiết nhân viên có bị xóa thành công hay không, chúng tôi sẽ sử dụng câu lệnh SELECT:
SELECT * FROM EMPLOYEE;
EMPLOYEEID | FIRST_NAME | LAST_NAME | TIỀN LƯƠNG | THÀNH PHỐ | KHOA | MANAGERID | TUỔI | DOJ |
1001 | Vaibhav | Sharma | 78000 | PUNE | ORACLE | 1 | 23 | 2021-09-20 |
1002 | Nikhil | Vani | 86400 | NOIDA | ORACLE | 1 | 21 | 2021-09-23 |
2002 | Thực tế | Sharma | 78600 | DELHI | FMW | 2 | 23 | 2021-09-20 |
2003 | Bhavesh | Jain | 86400 | MUMBAI | KIỂM TRA | 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 | MỤC TIÊU | 87120 | MUMBAI | KIỂM TRA | 4 | 23 | 2021-09-20 |
Ví dụ 2: Viết truy vấn để xóa thông tin chi tiết về nhân viên khỏi bảng nhân viên của những nhân viên có thành phố nằm giữa Delhi và Pune.
DELETE FROM EMPLOYEE WHERE CITY BETWEEN ‘DELHI’ AND ‘PUNE’;
Trong tuyên bố trên, chúng tôi sẽ xóa thông tin chi tiết về nhân viên của những nhân viên có thành phố nằm giữa Delhi và Pune.
Để kiểm tra chéo xem chi tiết nhân viên có bị xóa thành công hay không, chúng tôi sẽ sử dụng câu lệnh SELECT:
SELECT * FROM EMPLOYEE;