Computer >> Máy Tính >  >> Lập trình >> MySQL

Chức năng dòng điều khiển MYSQL CASE hoạt động như thế nào?


Câu lệnh MySQL CASE là một hàm điều khiển luồng cho phép chúng ta xây dựng các điều kiện bên trong một truy vấn như mệnh đề SELECT hoặc WHERE. Chúng ta có hai cú pháp của câu lệnh CASE

Cú pháp-1

CASE val
WHEN compare_val1 THEN result1
WHEN compare_val2 THEN result2
.
.
.
Else result
END

Ở đây trong cú pháp đầu tiên này, nếu val bằng so sánh_val1 thì câu lệnh CASE trả về result1 . Nếu giá trị bằng so sánh_val2 thì câu lệnh CASE trả về result2 và như vậy.

Trong trường hợp nếu val không khớp với bất kỳ so sánh nào thì câu lệnh CASE trả về kết quả được chỉ định trong ELSE mệnh đề.

Ví dụ

mysql> Select CASE 100
    -> WHEN 100 THEN 'It is matched'
    -> WHEN 200 THEN 'It is not matched'
    -> ELSE 'No use of this Number'
    -> END as 'Matching the Number';
+---------------------+
| Matching the Number |
+---------------------+
| It is matched       |
+---------------------+
1 row in set (0.06 sec)

Cú pháp-2

CASE
WHEN condition_1 THEN result1
WHEN condition_2 THEN result2
.
.
.
Else result
END

Ở đây trong cú pháp thứ 2 này, câu lệnh CASE trả về result1, result2, v.v. . nếu điều kiện là đúng. Trong trường hợp nếu tất cả các điều kiện đều sai, câu lệnh CASE trả về kết quả được chỉ định trong ELSE mệnh đề.

Ví dụ

mysql> Select CASE
    -> WHEN (100 = 100) THEN 'It is Matched'
    -> WHEN (200 = 100) Then 'It is Not Matched'
    -> Else 'No use of Number'
    -> END as 'Matching the Number';
+---------------------+
| Matching the Number |
+---------------------+
| It is Matched       |
+---------------------+
1 row in set (0.00 sec)