この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 15127|答える: 0

[出典] IFNULL、NULLIF、ISNULLの利用

[リンクをコピー]
掲載地 2018/05/11 13:37:59 | | |
isnull、ifnull、nullifの使い方は以下の通りです。

isnull(expr)の使用法:exprがnullの場合、isnull()は1の値を返し、そうでなければ0を返します。
mySQL> Select ISNULL(1+1);
-> 0
mysql> select isnull(1/0);
-> 1
null値比較に=を使うのは通常間違っています。

isnull()関数は、is null比較演算子といくつかの特徴を共有しています。 「は無効である」という注意を参照してください。

IFNULL(expr1, expr2)の使用例:

expr1がNULLでない場合、IFNULL()の返り値はexpr1となります。
そうでなければ、expr2の値を返します。 IFNULL() は、使用される文脈によって数値または文字列を返します。

mysql> SELECT IFNULL(1,0);
-> 1
MYSQL> SELECT IFNULL(NULL,10);
->10
mysql> SELECT IFNULL(1/0,10);
->10
mysql> SELECT
IFNULL(1/0, 'はい');

->「はい」

IFNULL(expr1,expr2)のデフォルト結果値は、STRING、REAL、または
整数。 式ベースのテーブルやMySQLが、IFNULL()の返り値を内部メモリの一時テーブルに保存しなければならない状況を仮定します。
CREATE TABLE tmp SELECT IFNULL(1,'test') AS test;
この例では、テストカラムはCHAR(4)型です。
NULLIF(expr1, expr2)の使用例:  
もしexpr1なら
= expr2 が真であれば、戻り値が NULL になり、そうでなければ戻り値は expr1 となります。 これは CASE WHEN expr1 = expr2 と同じです
すると、NULL ELSE EXPR1 ENDは同じです。
mysql> SELECT
NULLIF(1,1);

-> NULL
mysql> SELECT NULLIF(1,2);
-> 1
パラメータが等しくない場合、MySQLはexpr1の値を2回取得します。






先の:サーバーCPUハードウェア性能テスト
次に:MySQLを使って100万レベル以上のデータを処理する際には、いくつかの常識を知っておく必要があります
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com