Hầu hết (có thể là tất cả ) ngôn ngữ lập trình bao gồm một số dạng của IF
câu lệnh cho phép người lập trình viết mã điều kiện. Đó là, mã sẽ chỉ thực thi nếu một điều kiện nhất định là đúng.
Đó là một khái niệm rất đơn giản. Về cơ bản nó diễn ra như thế này:
“Nếu điều này, hãy làm điều đó.”
Hầu hết các ngôn ngữ chỉ gọi nó là IF
, nhưng một số có cách đặt tên riêng (ví dụ:trong ColdFusion / CFML, nó được gọi là CFIF
).
Trong mọi trường hợp, về cơ bản chúng đều làm điều tương tự.
Trong SQL Server (hay chính xác hơn là ngôn ngữ lập trình T-SQL), nó được gọi là IF
.
Ví dụ
Dưới đây là một ví dụ cơ bản để chứng minh cách IF
tuyên bố hoạt động.
IF 1 < 2 SELECT 'True';
Kết quả:
True
Trong trường hợp này, biểu thức để đánh giá là 1 < 2
. Đúng là 1 nhỏ hơn 2 nên SELECT
câu lệnh đã được chạy và True
đã được trả lại.
Tuy nhiên, nếu biểu thức là false, sẽ không có gì xảy ra.
Ví dụ sau minh họa điều này:
IF 1 > 2 SELECT 'True';
Kết quả:
Commands completed successfully.
Tất cả những gì SQL Server nói với tôi là lệnh đã hoàn tất thành công. Không có gì khác được trả lại, vì không có gì khác được chỉ định.
Câu lệnh IF… ELSE
Trong SQL Server, IF
câu lệnh đi kèm với một ELSE
tùy chọn , cho phép bạn cung cấp một phương án thay thế, trong trường hợp biểu thức trả về giá trị false.
Do đó, nó giống như nói “NẾU điều này, hãy làm điều này, ELSE, hãy làm điều này”.
Trong trường hợp này, chúng ta có thể thêm ELSE
tùy chọn đến IF
để nó trở thành một câu lệnh IF... ELSE
tuyên bố.
IF 1 > 2
SELECT 'True';
ELSE
SELECT 'False';
Kết quả:
False
Bây giờ chúng ta cũng nhận được kết quả khi biểu thức là sai.
Câu lệnh IF lồng nhau
Một trong những điều tuyệt vời về IF
là bạn có thể lồng chúng vào nhau. Đó là, bạn có thể thêm IF
các câu lệnh bên trong câu lệnh ban đầu của bạn và nhiều hơn nữa bên trong những câu lệnh đó, v.v.
Bạn có thể lồng bao nhiêu IF
tuyên bố như bạn muốn. Bạn chỉ bị giới hạn bởi số lượng bộ nhớ khả dụng.
Dưới đây là một ví dụ về lồng một IF
bên trong một câu lệnh khác.
DECLARE @bankBalance int = 123;
IF @bankBalance > 100
IF @bankBalance > 150
SELECT 'Rich!';
ELSE
SELECT 'Wealthy';
ELSE
SELECT 'Poor';
Kết quả:
Wealthy
IF… Câu lệnh ELSE IF
Bạn cũng có thể sử dụng nó như một IF... ELSE IF
tuyên bố.
DECLARE @bankBalance int = 123;
IF @bankBalance > 150
SELECT 'Rich!';
ELSE IF @bankBalance > 100
SELECT 'Wealthy';
ELSE
SELECT 'Poor';
Kết quả:
Wealthy