Toán tử ANY trong SQL Server

Trong hướng dẫn này, bạn sẽ tìm hiểu cách sử dụng toán tử ANY trong SQL Server để so sánh một giá trị với một tập hợp giá trị cột đơn được trả về bởi một truy vấn con.

Giới thiệu về toán tử ANY trong SQL Server

Toán tử ANY là một toán tử logic so sánh một giá trị với một tập các giá trị cột đơn trả về bởi một subquery.

Sau đây là cú pháp của toán tử ANY:

scalar_expression comparison_operator ANY (subquery)

Trong cú pháp này:

  • scalar_expression là bất kỳ biểu thức hợp lệ nào.
  • comparison_operator là bất kỳ toán tử so sánh hợp lệ nào bao gồm bằng (=), không bằng (<>), lớn hơn (>), lớn hơn hoặc bằng (>=), nhỏ hơn (<), nhỏ hơn hoặc bằng (<=).
  • subquery là một câu lệnh SELECT trả về tập kết quả của một cột duy nhất với dữ liệu giống như kiểu dữ liệu của biểu thức.

Giả sử subquery trả về một danh sách các giá trị v1, v2, ...,   vn. Toán tử ANY sẽ trả về TRUE nếu có bất kỳ biểu thức so sánh (scalar_expression, vi) trả về TRUE. Nếu không, nó sẽ trả về FALSE.

Lưu ý rằng toán tử SOME tương đương với toán tử ANY.

Ví dụ về toán tử ANY trong SQL Server

Hãy xem bảng products trong cơ sở dữ liệu mẫu BikeStores.

Toán tử ANY trong SQL Server

Ví dụ sau đây tìm các sản phẩm đã được bán với nhiều hơn hai đơn vị trong một đơn đặt hàng:

SELECT
    product_name,
    list_price
FROM
    production.products
WHERE
    product_id = ANY (
        SELECT
            product_id
        FROM
            sales.order_items
        WHERE
            quantity >= 2
    )
ORDER BY
    product_name;

Trong hướng dẫn này, bạn đã tìm hiểu cách sử dụng toán tử ANY trong SQL Server để so sánh một giá trị với một tập giá trị cột đơn.

SQL ServerSubquery
Bài Viết Liên Quan:
Hướng dẫn đầy đủ về Expression trong SQL Server
Trung Nguyen 18/03/2021
Hướng dẫn đầy đủ về Expression trong SQL Server

Trong hướng dẫn này, bạn sẽ học cách sử dụng biểu thức CASE, COALESCE và NULLIF trong SQL Server.

NULLIF trong SQL Server
Trung Nguyen 18/03/2021
NULLIF trong SQL Server

Trong hướng dẫn này, bạn sẽ học cách sử dụng biểu thức NULLIF trong SQL Server để trả về NULL nếu đối số đầu tiên bằng đối số thứ hai.

COALESCE trong SQL Server
Trung Nguyen 18/03/2021
COALESCE trong SQL Server

Trong hướng dẫn này, bạn sẽ học cách sử dụng biểu thức COALESCE trong SQL Server để xử lý giá trị NULL trong các truy vấn.

CASE trong SQL Server
Trung Nguyen 18/03/2021
CASE trong SQL Server

Trong hướng dẫn này, bạn sẽ học cách sử dụng biểu thức CASE trong SQL Server để thêm logic if-else vào các truy vấn SQL.