
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
NULLに値を入れる方法
エクセルデータをQlik Senseにロードする際に、
空欄を任意の文字列として読み込む方法があれば教えてください。
例:
No. ステータス
1 済
2 済
3 (Null)
4 済
5 (Null)
6 済
Nullを「未」として読み込み、空欄を集計の対象としたい場合
よろしくお願いします。
- Tags:
- Group_Discussions

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
データロードエディタで、IsNull()関数を使ってやれば可能かと思います。
LOAD
[No.],
If(IsNull([ステータス]), '未', [ステータス]) as [ステータス]
FROM
~~~~~


- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
お世話になります。
NullAsValueはどうでしょうか。

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Tozuka Takuya 様
ご回答ありがとうございます。
ご教示頂いたやり方でできました。
ありがとうございました。

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
藤川 郁司 様
ご回答ありがとうございます。
こちらの方法でもできました。
ありがとうございました。


- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
NULLと空欄は、QVではきちんと別で認識されますので、ISNULL関数の場合は、空欄はかからないですよ。
下記サンプルスクリプトですが、データを5行作成して、2行目をNULL、3行目を空白にしたテーブル「TEMP」を用意し、テーブル「DATA」の「値2」で判定しています。
TEMP:
LOAD RowNo() as 行数,
IF(RowNo()=2,NULL(),IF(RowNo()=3,'',RowNo())) as 値
AutoGenerate (5);
DATA:
LOAD 行数,
値,
IF(IsNull(値),'NULL',IF(Len(値)=0,'空白',値)) as 値2
Resident TEMP;
DROP Table TEMP;
エクセルのストレートテーブルは、たしか空白として認識されると思うので、’Len(値)=0’によって判定されると思います。(空白の判定関数もあるかもしれませんが)


- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
そうですよね、Nullと空欄の違いはやはりデータベースを扱うとよりハッキリするかもしれません。
また先日は集計対象にさせないために該当以外はNullにして、Nullを積極的に活用もしました。
もしかするとNullの使い道もいろいろあるかもしれませんね。
