実際、MySQL IFNULL() 関数と NULLIF() 関数の構文は、以下に示すようにほぼ同じです。
IFNULL(expression1, expression2)
NULLIF(expression1, expression2)
結果として最初のパラメータを返すことでこれらを区別できます。 IFNULL() 関数は、最初の引数が NULL でない場合は最初の引数を結果として返し、2 つの引数が同じでない場合は NULLIF() 関数は最初の引数を結果として返します。
mysql> Select IFNULL('Ram','Shyam'); +-----------------------+ | IFNULL('Ram','Shyam') | +-----------------------+ | Ram | +-----------------------+ 1 row in set (0.00 sec) mysql> Select NULLIF('Ram','Shyam'); +-----------------------+ | NULLIF('Ram','Shyam') | +-----------------------+ | Ram | +-----------------------+ 1 row in set (0.00 sec)
上記の 2 つの関数の結果セットを見ると、似ているように見えますが、IFNULL() 関数は最初のパラメーターであり NULL ではないため、「Ram」を返します。一方、NULLIF() 関数は、最初のパラメーターであり 2 番目のパラメーターとは異なるため、「Ram」を返します。
以上がMySQL IFNULL() 関数と NULLIF() 関数をどのように区別すればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。