MySQLで空白の文字列をNULLに変換する方法を記載します。
Code | Name | Continent | IndepYear | test |
---|---|---|---|---|
ABW | Aruba | North America | NULL | |
AFG | Afghanistan | Asia | 1919 | |
AGO | Angola | Africa | 1975 | |
AIA | Anguilla | North America | NULL |
というテーブルがあったとします。
このtestカラムの中の空文字をSELECTで抽出するときは全てNULLに変えたい場合です。
SELECT
Code,
Name,
Continent,
IndepYear,
nullif(test,'')
FROM
country
;
とSELECT文を書き実行すると、
Code | Name | Continent | IndepYear | nullif(test,'') |
---|---|---|---|---|
ABW | Aruba | North America | NULL | NULL |
AFG | Afghanistan | Asia | 1919 | NULL |
AGO | Angola | Africa | 1975 | NULL |
AIA | Anguilla | North America | NULL | NULL |
このように表示されます。
nullif(カラム名,'NULLに変えたい文字列')
ということになります。
カラム名を整えたいなら、
SELECT
Code,
Name,
Continent,
IndepYear,
nullif(test,'') as test
FROM
country
;
としてあげれば
Code | Name | Continent | IndepYear | test |
---|---|---|---|---|
ABW | Aruba | North America | NULL | NULL |
AFG | Afghanistan | Asia | 1919 | NULL |
AGO | Angola | Africa | 1975 | NULL |
AIA | Anguilla | North America | NULL | NULL |
になります。