MS Access

もう何度もAccessの集計クエリの作成をミスって怒られている

投稿日:2013年7月4日 更新日:

私が悪い。反省。

自戒のメモ。

Accessの集計クエリに条件を加えたい場合、その条件をどこに書くかによって結果が全く違ってくる。

全画面キャプチャ 20130704 174616

それをわかってはいるのだが・・・最大やら演算やら、細かいことを同時にしたい場合、私の馬鹿が露呈し、間違ったものを作ってしまう。

ポイントは、集計クエリでは、仮にテーブルに含まれる顧客IDが10件あったとして、
1.それが集計クエリのWhere条件以外(!)の条件を使ってまとめられ、
2.結果がさらにWhere条件に記した条件で抽出される・・・
・・・という流れになる。これが頭にしっかり入っていればいいのだが、なぜか身につかない。

全画面キャプチャ 20130704 172949

つまり、画像上のクエリでは、Where条件がないので、住所既定にTrueがセットされたレコードの住所を期待しても、同じ顧客IDではあるが、全く違うレコードの一部をつまんで1つに作り替えてしまうので、違う住所になる可能性が出てくる。
スロットマシンみたいに・・・ああ。

-MS Access

執筆者:

関連記事

no image

access覚書

複雑な親子フォームを作る際、テーブル設定でインデックスを2つのフィールドとも「はい (重複あり)」にすることで、親のコンボボックスに子が連動するようになった。 Excelでコピーした表データをテーブル …

no image

AccessのBeforeUpdateでUndo

BeforeUpdateプロシージャ内の処理で、Cancel = Trueとしたら更新がキャンセルされるところまではできたが、テキストボックスにNullを代入しようとしてエラーが出たりして、間違って入 …

no image

Accessクエリでのフィールド名は同じので重複できる

Accessではクエリの中で同じフィールド名を使えない! ・・・とずっと思っていた。 なので、テーブルで使っているフィールド名でクエリの結果を出す必要があった際には、クエリを二つ作ってそれぞれ前処理 …

no image

客先で動かしているAccessとFAXの連携システムが昨日から止まっている

これまでのWindowsXP+OutlookExpressであれば問題なかった。 しかし、OSはWindows7になってしまい、メールはWindowsLiveメールになってしまった。 そしてWindo …

no image

VBAで英字混じりの引数から数字のみを取り出す関数

たとえば、abcABC123456XYGという引数から、123456のみを取り出したい。 VBAの組み込み関数で、適当なのがありそうだけど、無いみたい。 カスタム関数を作るにも、これはという情報がググ …