NULLのときの値を指定( IFNULL関数, COALESCE関数 )

特定のカラムにNULLが格納されているとき、特定の値を指定したいケースがあります。そのようなとき「 IFNULL関数」「COALESCE関数」が役立ちます。ここでは、「 IFNULL関数」「COALESCE関数」について紹介します。

動作確認用レコード

以下テーブルで動作確認をします。

mysql> SELECT * FROM `test`;
+----+------+------+------+------+
| id | v1   | v2   | v3   | v4   |
+----+------+------+------+------+
|  1 |    1 | NULL | NULL | NULL |
|  2 | NULL |    2 | NULL | NULL |
|  3 | NULL | NULL |    3 | NULL |
|  4 | NULL | NULL | NULL |    4 |
|  5 | NULL | NULL | NULL | NULL |
+----+------+------+------+------+
5 rows in set (0.00 sec)

IFNULL関数

IFNULL関数を利用すると、第1引数に指定した内容がNULLのとき、第2引数の値を返します。

以下、実行例です。

mysql> SELECT IFNULL(`v1`, 9999)
    -> FROM `test`;
+--------------------+
| IFNULL(`v1`, 9999) |
+--------------------+
|                  1 |
|               9999 |
|               9999 |
|               9999 |
|               9999 |
+--------------------+
5 rows in set (0.00 sec)

COALESCE関数

まず、実行例を見せます。

mysql> SELECT COALESCE(`v1`, `v2`, `v3`, `v4`, 9999)
    -> FROM `test`;
+----------------------------------------+
| COALESCE(`v1`, `v2`, `v3`, `v4`, 9999) |
+----------------------------------------+
|                                      1 |
|                                      2 |
|                                      3 |
|                                      4 |
|                                   9999 |
+----------------------------------------+
5 rows in set (0.00 sec)

複数の引数を指定しています。指定した引数のうち、最初に見つかった NULL以外の値 を返します。

mysql> SELECT COALESCE(`v1`, `v2`, `v3`, `v4`) FROM `test`;
+----------------------------------+
| COALESCE(`v1`, `v2`, `v3`, `v4`) |
+----------------------------------+
|                                1 |
|                                2 |
|                                3 |
|                                4 |
|                             NULL |
+----------------------------------+
5 rows in set (0.00 sec)

上記、最後のレコードのように NULL以外の値 が存在しない場合、NULLになります。

【エンジニア向け】仕事を見つける方法

転職する

転職エージェントを活用する

転職サイトの場合、自身でサイト上から企業を探す必要があります。 一方「レバテックキャリア」 などの転職エージェントの場合、エージェントが企業を紹介してくれます。エージェントが間に入ることにより、日程調整や、条件交渉などもサポートしてくれます。

転職ドラフトを活用する

転職ドラフト」は、 企業がITエンジニアをドラフトという形で指名するサービスです。年収が最初に提示されるなどのメリットがあります。 ただ、初回登録時にレジュメ作成が必要で、すでにエンジニア経験が豊富にあるエンジニア向けのサービスかと思います。 レジュメ作成が手間ですが、自身のキャリアを見直す機会になり、他の仕事探しにも役立つはずです。

エンジニア転職保証のあるスクールを活用する

ある程度、開発経験のあるかたであれば、独学で必要なスキルを身につけることができるはずです。ただ、別業種からエンジニアに転職したい場合など、1から独学で学ぶのはハードルが高いです。そういった方は、スクールの活用を検討しても良いと思います。 「TechAcademy」は、エンジニア転職保証コースを提供しています。給付金制度の対象講座として認定されているため、金銭面の負担も抑えることができます。

フリーランスとして活動する

レバテックフリーランス」「ITプロパートナーズ」「ギークスジョブ」は、フリーランスエージェントサービスです。 エージェントによって、支払いサイトなど細かい違いはありますが、まずは良い案件を見つけることが重要です。 登録自体は無料なので、複数エージェントに登録して、より多くの案件を紹介してもらうのがおすすめです。