<HOME <お願い事項 <Access2000 TOP <Access97 TOP <サイト内検索 | ||
MS-Access2002チョ〜入門部屋>クエリを極める | ||
Nullというのは、Nullというデータが入っているのではなくて、Nullという状態であることを表しています。
一般的には「未入力/未使用のフィールド」と考えたほうがよいでしょう。
「空白」とはちょっと違うのです。
数値型のフィールドは、未入力の場合、だいたい「ゼロ」が自動的に入ってくると思います。
でも、たとえば・・・後から追加したフィールドだったりすると、ゼロじゃなくてNull状態になることもあります。
こういうフィールドを使って足し算とか掛け算とか、関数を使って何かしら計算をさせようとすると、Nullなので計算の対象になりません。
たとえば、テーブルに後からフィールドを追加したとします。
今追加したばかりのフィールドなので、全部未入力状態です。
で、クエリで二つのフィールドの足し算をするように作ってみましたところ・・・。
デマセーン。
[去年の売上]のところに何かしら数値を入力すれば、計算します。
でも[去年の売上]がNullのレコードに関しては、答えは出てきません。
こういうときの対処方法は大きく分けてふたつあります。
1)書式とかを利用して、[去年の売上]フィールドのNullをゼロに置き換えておく。
2)式1の足し算でNz関数を使い、Nullの場合でも計算を行うようにする。
2)の例でいくと、以下のようにNz関数でくくって足し算をします。
とりあえず・・・なんかしら答えは出るようになりますよね。