![]() |
||
<HOME <お願い事項 <Access2002 TOP <Access2000 TOP <サイト内検索 | ![]() |
|
![]() |
||
MS-Access97超入門>その他のクエリ |
集計クエリ(Σ) クエリで計算式 クロス集計クエリ 不一致クエリ |
クエリーは、縦集計だけじゃなく、中のフィールドを利用して計算式を作り、基のテーブルには存在しないフィールドを作成することもできるんです。
例えば、上のように、[名簿テーブル]を基にひとつクエリーを作ったとします。
で、右の端のあいているグリッドに、勝手に半角で500と数字を入力したとします。
と、このクエリーをデータシートビューに切り替えて開いてみると・・。
[式1]というフィールドがいっこできてますね。中身は全部500です。意味ないですけど、意味わかりますか?
式1というのは、クエリーが勝手に付けたフィールド名です。
わかりにくいのでなんか書き換えてみるとして、今度はもう少し式っぽいのにしてみましょう。
練習用:[かせぎ]*1.5
ひらがな漢字以外は全部半角です。
すると・・・。
[かせぎ]の金額を1.5倍にした値が、[練習用]というフィールドの中に計算されて表示されてます。
あんまり複雑な計算式は、ここでは難しいですが、同じレコードとして並んでいる値を使った式なら、いろいろ可能性はありそうですね。
じゃあ、[練習用]の計算式を、こんな風に書き変えてみてください。
練習用:iif([成績]="A",[かせぎ]*1.5,[かせぎ])
IIf関数という関数で、「もし成績がAだったらかせぎは1.5倍、そうでなければそのまま据え置き」という意味になります。
IIfは大文字でも小文字でもどちらでもOK。いずれIIfという表記に変ります。ただし、絶対に半角です。
入力しにくかったら、この[練習用]のグリッドの中にカーソルがある状態で[F2]キーを押します。ズームという機能です。
ただ専用の枠が出て入力がしやすいだけで、式の入力を手伝ってくれるわけじゃないんですけどね。
大概の場所で有効ですので、ズーム機能も活用してください。
Aをダブルコーテーションで囲んでいるのは、Aはフィールド名じゃなくて、成績がAの場合、という意味で固有の値として入力するからですね。
できました?じゃあ、結果を見てみますかね。
どうでしょう。成績が"A"の人だけ、かせぎが1.5倍になってますかね。
成績がいいと、いいことありますよね。
あんまり複雑な計算は無理かもしれませんが、けっこう使えますよ。
いろいろ工夫して活用してみてください。
![]() |
![]() |
![]() |