- 締切済み
アクセス97を使って新しいレコードと前のレコードとの間で演算したい
あるフィールドの新規レコードと、一つ前のレコードとの間で演算し、その結果を別のフィールドに保存する方法を教えて下さい。たとえば自動車の走行距離など、つねに増え続けるデータの差を一定期間(1ヶ月単位など)で求め、保存したい。 初心者ゆえの質問かもしれませんが、どなたかよろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- Toshi-T
- ベストアンサー率0% (0/0)
マイクロソフトの技術情報に次のものがあります。 [AC97] 前または次のレコードのフィールドを参照する方法 最終更新日: 1999/07/15 文書番号: J049050 ご参考になれば幸いです。 ちょうど私も研究中です。
- VT250F
- ベストアンサー率30% (26/84)
>自動車に例えると1台だけの場合はいいのですが、実際は複数・・・ うーん。少し難しいですね。後は応用だと思います。 例えば、元となるテーブルを車種別に抽出する「テーブル作成クエリー」を作り、 作成したテーブルにオートナンバーの主キーをつけて、 車種別に実行してはどうでしょうか? 問題は車種が多くなると管理するテーブルが増えてしまうと言うことです。 そこのところはテーブル名の命名基準を決めて、 テーブル名の頭数文字が同じなら、作業用のテーブルと言うことで、 一括削除する削除クエリーなり、マクロなりを作ればよいのではないでしょうか。 アクセスのモジュール(かなり難しいですが)に挑戦してもよいかもしれません。
- VT250F
- ベストアンサー率30% (26/84)
オートナンバー型のインデックス(主キー)が付いたテーブルAを作成します。 クエリー1で「オートナンバー + 1」となるフィールドを定義します。 Aとクエリー1をオートナンバーでひもつけ(結合)して後は 求めたいフィールド - 求めたいフィールド としたフィールド式を作れば、 当レコード - 前レコードとなります。 オートナンバーのついたクエリーを作ることはできないようです。
お礼
ありがとうございました。 教えていただいた方法で1台の車の場合については解決できましたが、テーブルに複数の車のデータがあり、当然オートナンバーを基準に計算した結果うまくいきません。よろしかったら解決方法をお教え下さい。
補足
VT250Fさんへ ありがとうございました。早速ためしてみました。 しかし自動車に例えると1台だけの場合はいいのですが、実際は複数であるため、テーブルの中で他の車のデータとの間で演算を行ってしまいうまくいきません。 車別に解決できる方法はありませんか。