Chức năng:
Câu lệnh IF ... ELSE ... Là một cấu trúc điều kiện, cho phép chúng ta thực hiện hoặc bỏ qua một hay nhiều lệnh dựa trên điều kiện đã chỉ định.
Cú pháp:
IF LOGIC_EXPRESSION
STATEMENT_SQL
ELSE
STATEMENT_SQL
Trong đó:
+ LOGIC_EXPRESSION: là một biểu thức logic, có giá trị True hoặc False. Tùy thuộc vào điều kiện, thì một trong hai khối lệnh sẽ được thực hiện.
+ STATEMENT_SQL: nếu có nhiều lệnh (khối lệnh) yêu cầu đồng thời được thực thi khi thỏa mãn điều kiện thì các lệnh này phải đặt trong cặp từ khóa BEGIN .. END
Ví dụ minh họa
Để thuận tiện cho các bạn học tập, mình có tạo sẵn file .sql trong này đã mình tạo cấu trúc bảng và data sẵn để các bạn dễ dàng thực hiện truy vấn, các bạn có thể tải tại đây.
Ví dụ 1: Kiểm tra xem trong bảng nhân viên có nhân viên nào có địa chỉ ở TP.HCM hay không?
Hướng dẫn giải:
USE QLDEAN
IF ((SELECT COUNT(*) FROM NHANVIEN WHERE DCHI LIKE '%TP.HCM%') > 0)
PRINT(N'Trong bảng nhân viên có nhân viên sống ở TP.HCM')
ELSE
PRINT(N'Trong bảng nhân viên không có nhân viên nào sống ở TP.HCM')
Kết quả:
Ví dụ 2: Kiểm tra trong bảng nhân viên có nhân viên nào có địa chỉ ở TP.HCM và có mức lương từ 30000 đến 50000? Nếu như có hãy xuất danh sách nhân viên đó.
Hướng dẫn giải:
USE QLDEAN
IF ((SELECT COUNT(*) FROM NHANVIEN WHERE DCHI LIKE '%TP.HCM%' AND LUONG BETWEEN 30000 AND 50000) > 0)
BEGIN
SELECT *
FROM NHANVIEN
WHERE DCHI LIKE '%TP.HCM%' AND LUONG BETWEEN 30000 AND 50000
END
ELSE
PRINT(N'Không có kết quả phù hợp')
Kết quả: