- ベストアンサー
集計クエリで
Access2002を利用しています。 集計クエリで、たとえば、商品ごとの重量*料金の合計(送料)を取りたいとした時、 フィールドの欄で、送料:Sum([重量]+[料金])で、集計を演算とするのと 送料:[重量]*[送料]として、集計で合計とするのでは、どうちがうのですか? 例がおかしいとおもうのですが、フィールドで集計関数を入れて、集計欄で演算とするのと、 フィールドに式を入れて、集計で合計とするのとどちらが正しいのか、またこの両者は違うのかを教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
この質問の例ではたまたま同じ結果になっただけでは? たとえば、 「重量」が小数点以下を含んだ数字で、 送料を求めるとき、1円未満の端数処理をしなければならない場合など、 結果に違いがでてくると思いますよ。 どっちが正しいというのよりも、 自分の求める演算方法に忠実な方を選択するべきでしょうね。
その他の回答 (1)
- yomo3
- ベストアンサー率32% (88/269)
kake_angelさん、こんばんは! happypointさんも、こんばんは! 結果が同じと言っても内部処理は大分違いますね。 フィールドに式を入れると、そのレコードごとの値を表示できるように、仮のテーブルを作成します。 Sum([重量]*[料金])のようにすると、取り急ぎ結果のみを追求できるので、Accessくんとしては、大分ラクです。 レコード数が膨大になるとこの差は結構大きいです。 happypointさんのご指摘の通り、小数点以下の処理など、レコードごとの処理が必要な場合は、QueryのFieldに計算式を入れる方がわかりやすいし有効ですが、集計結果のみ知りたいのでしたら、集計関数を使った方がよいでしょう。
お礼
御礼が遅くなりすみません。 レコードごとの処理が必要ならば・ もう一度確認してみます。
お礼
御礼が遅くなりありがとうございました。 端数がある値を利用して結果を確認してみます。