<HOME  <お願い事項   <Access2002 TOP   <Access97 TOP   <サイト内検索
 MS-Access2000超入門部屋--基本操作を考える
データベース テーブル フォーム クエリー レポート マクロ&仕上げ
1 1 2 3 4 1 2 3 4 5 6 7 B 1 2 3 4 5 6  8 1 2 3 4 5 1 2 3 4 S



■クエリーを作る前に■

さて。
テーブルの中にはいろんなデータがたまっていきます。はっきりいって、テーブルというオブジェクトは、物理的にデータをためるだけです。だから、中には雑多にデータが突っ込まれてるだけ。開けば「主キー」の順に並んで表示されることはされますけど、基本的にこちらの意図どおりにレコードを並べ替えたりするためのものではない、と、すっぱり考えてください。

で、どうするかというと・・・このテーブルを元にクエリーというオブジェクトを工夫して作ることで、こちらの意図どおりのデータを取り出すことができるようになるんです。


Accessに限らず、なんでもそうなんですけど、最終的に「物理的にデータがたまるところ」というのが必ずあります。
Accessの場合は「テーブル」です。
これはもうみなさん、だいたいイメージできてるんじゃないかと思います。
フォームにはデータはたまりません。フォームを通じて入力したとしても、そのフォームが元にしてるテーブルに、データはたまっていくのです。
だから、一番大事なオブジェクトなんですよ。テーブルって。

Accessのようなデータベースソフトの指名は、大きく分けて、すっごく大きく分けてふたつあります。

1)データを入力して、ためておく。

2)たまったデータから、必要なデータだけ取り出す。

どんな難しいデータベースだって、基本はこのふたつですよね。ここまで大まかにイメージできるようになれば、Accessを自由に使いこなせるようになったも同じですよ。イメージ、湧きますか???
んで、Accessの場合、2)の部分を実現するために作るのが「クエリー」です。


じゃ、ちょっと「イメトレ」しましょうか(笑)ちょっと横に長いページになっちゃって読みにくいかもわかりませんが・・・。
たとえば、こんな感じのテーブルがあって、データが日々たまっていくものと仮定します。

で、このテーブルから、データを取り出すわけなんですが・・・。まず、基本は3つあると思ってください。

(1)基本その1 必要なフィールドを選ぶ

「担当者」と
「売上」だけ
見たい


(2)基本その2 条件を満たしたレコードだけ取り出す

「担当者」が
"モロボシダン"の
レコードだけ
「売上」が
1,000,000以上の
レコードだけ


(3)基本その3 並べ替える

「顧客名」順に
並べたい
「売上」の
多い順に
並べたい

どうでしょう。
ちょっとわかりにくいかな・・・。
左側の表から、右側の表を取り出すために、「売上の多い順にならべたい」とか「モロボシダンだけ取り出したい」とか、いろんな条件を作るわけなんですけど、この条件のことを「クエリー」と呼びます。Queryですね。意味としては「データベースへの問い合わせ」といった感じになりますか。
まあ、そんな小難しいことはどうでもよくって、要するに上のようなイメージを思い描くことができるようになればオッケーということです。

もちろん、もっといろいろあるんですけど・・・でも、基本は上の3つです。
基になるテーブルから

・どのフィールドを

・どういう条件で

・どういう並び順で

(別にこんな大きな字にしなくてもいいんだが)取り出すか?????????ということを書き記したオブジェクトのことを「クエリー」と呼びます。

なれちゃえば作り方自体は簡単なんですけど、この辺イメージできないと、多分何やってるかワケがわかんないんじゃないかと思うんです。
もとのテーブルの中のデータの内容を把握して、そこからどういうデータだけ取り出したいのか・・・その辺イメージできるようになれば、もうしめたもんですよ。