MySQL における IF()、IFNULL()、NULLIF()、および ISNULL() 関数の使用に関する詳細な説明

MySQL における IF()、IFNULL()、NULLIF()、および ISNULL() 関数の使用に関する詳細な説明

MySQL では、IF()、IFNULL()、NULLIF()、および ISNULL() 関数を使用してプロセスを制御できます。

1. IF()関数の使用

IF(expr1, expr2, expr3) は、expr1 の値が true の場合は expr2 の値を返し、expr1 の値が false の場合は expr3 の値を返します。

SELECT IF(TRUE,'A','B'); -- 出力: A
SELECT IF(FALSE,'A','B'); -- 出力: B

2. IFNULL()関数の使用

IFNULL(expr1, expr2) は、expr1 の値が null の場合に expr2 の値を返し、expr1 の値が null でない場合は expr1 の値を返します。

例1

      mysql> IFNULL(1,0); を選択します。   
                            -> 1   
      mysql> IFNULL(NULL,10); を選択します。   
                            -> 10   
      mysql> IFNULL(1/0,10)を選択します。   
                            -> 10   
      mysql> IFNULL(1/0, 'yes')を選択します。   
                            ->「はい」  

例2

SELECT IFNULL(NULL,'B'); -- 出力: B
SELECT IFNULL('HELLO','B'); -- 出力: HELLO

3. NULLIF()関数の使用

NULLIF(expr1, expr2)、expr1=expr2 の場合、戻り値は null になり、それ以外の場合は戻り値は expr1 の値になります。

SELECT NULLIF('A','A'); -- 出力: null
SELECT NULLIF('A','B'); -- 出力: A

4. ISNULL()関数の使用

ISNULL(expr) は、expr の値が null の場合は 1 を返し、expr1 の値が null でない場合は 0 を返します。

SELECT ISNULL(NULL); -- 出力: 1
SELECT ISNULL('HELLO'); -- 出力: 0

MySQL の IF()、IFNULL()、NULLIF()、ISNULL() 関数の詳しい使い方については、これで終わりです。MySQL の IF()、IFNULL()、NULLIF()、ISNULL() の詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MySql での IFNULL、NULLIF、ISNULL の使用法の詳細な説明
  • MySQL プロセス制御 IF()、IFNULL()、NULLIF()、ISNULL() 関数

<<:  Vue のフィルターの適用シナリオの詳細な説明

>>:  Dockerでボリュームを管理する2つの方法

推薦する

MySQL が自動的に再起動する問題の解決方法

序文最近、テスト環境で MySQL データベースが自動的に再起動し続ける問題が発生しました。原因は、...

Windows 10 に付属する仮想マシンのネットワークを設定するための詳細な手順 (グラフィック チュートリアル)

1. サーバー ホストをクリックし、右側の操作リストで [仮想スイッチ管理] をクリックして、仮想...

一般的なブラウザのユーザーエージェントの概要

1. 基礎知識: HTTP ヘッダー ユーザーエージェントユーザー エージェントは、ユーザー エージ...

MySQLにおけるトランザクションの永続性実装原理の詳細な説明

序文データベース トランザクションに関して言えば、トランザクションの ACID 特性、分離レベル、解...

CentOS8 - bash: 文字化けとその解決方法

この状況は通常、中国語言語パックがインストールされていないか、デフォルトの言語設定に問題があるために...

MYSQL パフォーマンス アナライザー EXPLAIN 使用例分析

この記事では、例を使用して MYSQL パフォーマンス アナライザー EXPLAIN の使用方法を説...

JS正規RegExpオブジェクトについての簡単な説明

目次1. RegExpオブジェクト2. 文法2.1 定義2.2 修飾子2.3 角括弧2.4 メタ文字...

JS ループで async と await を正しく使用する方法

目次概要(ループモード - 共通)配列と非同期メソッドを宣言して反復するforループで使用するマップ...

HTMLテーブルではテーブルの外側の境界線のみが表示されます

質問があります。Dreamweaver で、3 行 1 列のログイン フォーム (ログイン、登録、パ...

CSS3 transition-delay属性のデフォルト値が単位なしの0であり無効である問題を解決します

今日は、CSS3 の transition-delay 属性のデフォルト値 0 に単位がないのは無効...

MySQL学習記録: KEYパーティションが引き起こした血なまぐさい事件

需要背景ビジネス テーブル tb_image のデータの一部は次のとおりです。id は一意ですが、i...

JavaScript でネットワーク速度をテストする方法

目次序文ネットワーク速度のフロントエンド判定原理のまとめ1. img を読み込むか Ajax リクエ...

Webデザイン: タイトルが完全に表示できない場合

<br />今日、新しくなった ChinaUI.com の Web サイトを見たのですが...

CentOS7 に MySQL をオフラインでインストールする詳細なチュートリアル

1. 元のmariadbを削除します。削除しないとmysqlをインストールできません。 mariad...

Docker での MySQL 8.0.20 のインストールと設定のチュートリアル

Dockerは参考までにMySQLバージョン8.0.20をインストールします。具体的な内容は以下のと...