PostgreSQL Trong là gì?
Toán tử IN được sử dụng trong mệnh đề WHERE cho phép kiểm tra xem một giá trị có trong danh sách các giá trị khác hay không. Trong Hoạt động giúp giảm nhu cầu về nhiều điều kiện HOẶC trong các câu lệnh CHỌN, CẬP NHẬT, CHÈN hoặc XÓA.
Trong Hướng dẫn PostgreSQL này, bạn sẽ tìm hiểu những điều sau:
- PostgreSQL Trong là gì?
- Cú pháp
- Với nhân vật
- Với số
- Sử dụng toán tử NOT
- Sử dụng pgAdmin
Cú pháp
Toán tử IN có cú pháp sau:
value IN (value_1, value_2,… )
Giá trị là giá trị mà bạn đang kiểm tra trong danh sách.
Giá trị_1, giá trị_2
… Là các giá trị danh sách.Nếu giá trị được tìm thấy trong danh sách, toán tử sẽ trả về giá trị true.
Danh sách có thể là một tập hợp các chuỗi hoặc thậm chí là kết quả đầu ra của một câu lệnh SELECT như được hiển thị bên dưới:
value IN (SELECT value FROM table-name);
Câu lệnh được đặt bên trong dấu ngoặc đơn được gọi là một truy vấn con.
Với nhân vật
Hãy để chúng tôi chứng minh cách bạn có thể sử dụng toán tử IN với các giá trị ký tự.
Hãy xem xét bảng sau:
Nhân viên:
Hãy để chúng tôi chạy truy vấn sau đối với bảng trên:
SELECT *FROM EmployeesWHERE name IN ('James John', 'Mercy Bush', 'Kate Joel');
Nó trả về như sau:
Chúng tôi có một danh sách gồm ba cái tên. Chúng tôi đang tìm kiếm liệu chúng tôi có thể tìm thấy bất kỳ tên nào trong số này trong cột tên của bảng Nhân viên hay không. Kate Joel đã được khớp với một trong các bản ghi của bảng, và các chi tiết của nó đã được trả lại.
Với số
Bây giờ, chúng ta hãy xem cách chúng ta có thể sử dụng toán tử IN với các giá trị số.
Hãy xem xét Bảng giá được đưa ra dưới đây:
Giá bán:
Chúng tôi có thể chạy truy vấn sau đối với bảng:
SELECT *FROM PriceWHERE price IN (200, 308, 250, 550);
Điều này trả về như sau:
Chúng tôi đã tạo một danh sách với 4 giá trị số. Chúng tôi đang kiểm tra xem liệu chúng tôi có thể khớp bất kỳ giá trị nào trong số này với các giá trị có trong cột giá của bảng Giá hay không. Hai giá trị được khớp và thông tin chi tiết của chúng đã được trả về.
Sử dụng toán tử NOT
Toán tử IN có thể được sử dụng cùng với toán tử NOT. Nó trả về các giá trị không được tìm thấy trong cột được chỉ định. Chúng tôi sẽ sử dụng bảng Giá để chứng minh điều này.
SELECT *FROM PriceWHERE price NOT IN (200, 400, 190, 230);
Điều này sẽ trả về như sau:
Chúng tôi đã tạo một danh sách với 4 giá trị số. Chúng tôi đang kiểm tra cột giá của Bảng giá để tìm các giá trị không nằm trong danh sách. Hai giá trị, 250 và 300, không được tìm thấy. Do đó chi tiết của họ đã được trả lại.
Sử dụng pgAdmin
Bây giờ chúng ta hãy xem các hành động có thể được thực hiện như thế nào bằng cách sử dụng pgAdmin.
Với nhân vật
Để thực hiện điều tương tự thông qua pgAdmin, hãy làm như sau:
Bước 1) Đăng nhập vào tài khoản pgAdmin của bạn.
Bước 2)
- Từ thanh điều hướng bên trái - Nhấp vào Cơ sở dữ liệu.
- Nhấp vào Demo.
Bước 3) Nhập truy vấn vào trình chỉnh sửa truy vấn:
SELECT *FROM EmployeesWHERE name IN ('James John', 'Mercy Bush', 'Kate Joel');
Bước 4) Nhấp vào nút Thực thi.
Nó sẽ trả về như sau:
Với số
Để thực hiện điều tương tự thông qua pgAdmin, hãy làm như sau:
Bước 1) Đăng nhập vào tài khoản pgAdmin của bạn.
Bước 2)
- Từ thanh điều hướng bên trái - Nhấp vào Cơ sở dữ liệu.
- Nhấp vào Demo.
Bước 3) Nhập truy vấn vào trình chỉnh sửa truy vấn:
SELECT *FROM PriceWHERE price IN (200, 308, 250, 550);
Bước 4) Nhấp vào nút Thực thi.
Nó sẽ trả về như sau:
Sử dụng toán tử NOT
Để thực hiện điều tương tự thông qua pgAdmin, hãy làm như sau:
Bước 1) Đăng nhập vào tài khoản pgAdmin của bạn.
Bước 2)
- Từ thanh điều hướng bên trái - Nhấp vào Cơ sở dữ liệu.
- Nhấp vào Demo.
Bước 3) Nhập truy vấn vào trình chỉnh sửa truy vấn:
SELECT *FROM PriceWHERE price NOT IN (200, 400, 190, 230);
Bước 4) Nhấp vào nút Thực thi.
Nó sẽ trả về như sau:
Tóm lược:
- Toán tử IN được sử dụng với toán tử WHERE. Nó cho phép kiểm tra xem một giá trị cụ thể có trong một bảng cụ thể hay không.
- Toán tử IN giúp giảm nhu cầu sử dụng nhiều toán tử HOẶC trong các câu lệnh SELECT, UPDATE, INSERT hoặc DELETE.
- Khi tạo danh sách ký tự để kiểm tra sự hiện diện của một giá trị, mỗi giá trị trong danh sách phải được đặt trong dấu ngoặc kép.
- Toán tử IN cũng có thể được sử dụng với các giá trị số.
- Khi toán tử IN được sử dụng cùng với toán tử NOT, nó sẽ trả về tất cả các giá trị không được tìm thấy trong cột được chỉ định.
Tải xuống Cơ sở dữ liệu được sử dụng trong Hướng dẫn này