質問: CREATE TABLEでデータ型がNUMBERとDATE型のデフォルト表示をNULLではなく空白にしたいのですがどうしたらよろしいですか。具体的にはインサート文でNUMBER型やDATE型に挿入しなかったら通常はNULLになりますがそれを空欄表示にするにはどうしたら良いですか。
回答: CREATE TABLEでは > > データ型がNUMBERとDATE型のデフォルト表示をNULLではなく空白にしたい > > > はできません。 SQL*Plusからなら何も設定しなければ(デフォルト)、SELECT時はNULLは空白になります。 TO_CHAR(数値型列名, '999,990') -- 書式マスクは任意 TO_DATE(DATE型列名, 'YYYY/MM/DD HH24:MI:SS') -- 書式マスクは仕様に合わせる でもNULLは空白になるかと。 それでもダメなら ``` SELECT CASE WHEN 数値型列名 IS NULL THEN ' ' -- 任意の桁数 ELSE TO_CHAR(数値型列名, '999,990') END AS COLUMN_NAME1 , CASE WHEN DATE型列名 IS NULL THEN ' ' -- 任意の桁数 ELSE TO_CHAR(DATE型列名, 'YYYY/MM/DD HH24:MI:SS') END AS COLUMN_NAME2 FROM ... ```