ホームページ  >  記事  >  データベース  >  MYSQL 制御フロー関数 CASE はどのように機能しますか?

MYSQL 制御フロー関数 CASE はどのように機能しますか?

王林
王林転載
2023-09-06 17:17:021107ブラウズ

MYSQL 制御フロー関数 CASE はどのように機能しますか?

MySQL CASE ステートメントは、クエリ内に SELECT 句や WHERE 句などの条件を構築できるフロー制御機能です。 2 つの CASE ステートメント構文

Syntax-1

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

があります。最初の構文では、val が compare_val1 に等しい場合、CASE ステートメントは result1# # を返します。 #。 val が compare_val2 と等しい場合、CASE ステートメントは result2 などを返します。

val がどの Compare_val にも一致しない場合、CASE ステートメントは

ELSE 句で指定された result を返します。

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)

構文 2

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

2 番目の構文では、CASE ステートメントは

結果 1、結果 2 などを返します。条件が true の場合。すべての条件が false の場合、CASE ステートメントは ELSE 句で指定された result を返します。

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)

以上がMYSQL 制御フロー関数 CASE はどのように機能しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。