* テーブルのレコード内で計算は? [#e3b69bff]
 -ページ:[[FrontPage]]
 -投稿者: 初心者
 -分類: Q&A
 -優先順位: 普通
 -状態: 完了
 -カテゴリー: Base データベース
 -投稿日: 2006-07-31 16:30:26 (月)
 -OS: Windows XP
 -バージョン: 2.0.3
 
 //////////バグ対策(以降マッチさせない)
 
 ** メッセージ [#s5b7c33a]
 #contents
 
 テーブルのレコードに個数 実数[REAL] 価格 実数[REAL] があったとします!
 レコード合計価格を計算するにはどうすればいいですか? 
 #clear
 
 ----
 ***クエリを使う [#q72d195d]
 >KAITO (2006-08-01 10:13:12 (火))~
 ~
 質問の「Aテーブルの個数フィールドと価格フィールドのデータを集計して合計値を算出したい」と読み替えて答えます。~
 1つのテーブル内のフィールドを集計するには、クエリーを使用しています。クエリーの中の関数を合計にする。結果、フィールド単位の合計を計算します。~
 
 //
 ***クエリーの使い方がわかりません [#y2056979]
 >初心者 (2006-08-02 10:05:26 (水))~
 ~
 クエリーの関数を合計にしましたが結果が何処にも表示されませんでした。~
 
 //
 ***フィールドの合計について [#yeec2e8e]
 >初心者 (2006-08-02 11:35:14 (水))~
 ~
 クエリーで検索リストは出るのですが合計計算結果が表示させません。~
 
 //
 ***クエリー参考添付 [#f7ec7437]
 >kaito (2006-08-02 11:37:55 (水))~
 ~
 クエリーの使用方法は参考資料等紹介されていますので、そちらを参照して下さい。~~
 クエリーの集計を行うサンプルを添付しました。参考にして下さい。~~
 
 //
 ***無題 [#mcebc7f5]
 >初心者 (2006-08-02 12:02:57 (水))~
 ~
 SUv 1~
 編集で開いて300の所が表示も計算も出来ないですが~
 最後にはテーブルファイルのオープンエラーとなりました。~
 
 //
 ***レコードの合計 [#idf711b0]
 >M.Kamataki (2006-08-02 12:24:22 (水))~
 ~
 kaitoさん、回答にご協力ありがとうございます。ただ、質問はフィールド間の計算だと、わたしは解釈しました。~
 ~
 というわけで、その前提で、以下のようなサンプルテーブルを用意しました。~
 |ID|商品名|単価|個数|
 |0|りんご|10|20|
 |1|ばなな|100|6|
 |2|みかん|20|10|
 こんなサンプルで、1レコードごとに合計欄を設けたいということではないでしょうか。~
 
 //
 ***Re: 無題 [#c9f27b42]
 >M.Kamataki (2006-08-02 12:31:08 (水))~
 ~
 テーブルを作成しないで、クエリーだけ書くとそうなります。~
 
 //
 ***フィールド間の計算 [#h88cd546]
 >kaito (2006-08-02 12:49:16 (水))~
 ~
 当方も判らない事だらけですが、判る範囲でお答えします。~
 フィールド間の計算と言うことは、サンプルテーブルを使用すると個数フィールドの隣に単価と個数を計算した合計フィールド(欄)がほしいのであれば、クエリーで可能です。~
 例はID:0のリンゴ、単価10、個数20、集計フィールドは30(10+20の合計)になればよい。以下のレコードも同じ計算になります。~
 画像を添付しますので参考にして下さい。~
 
 //
 ***サンプル [#s4ab51a6]
 >M.Kamataki (2006-08-02 13:31:33 (水))~
 ~
 わたしもサンプルを用意したので説明します。~
 ~
 まず、レコード合計ですが、クエリーデザインのフィールド欄に直接計算式を入れればよいわけです。単価×個数なら「単価*個数」と入れ、Enterキーで確定すれば、自動的に「"単価" * "個数"」に変換されます。また、下図のようにエイリアス欄を使えば、計算式ではなく好きなタイトルをフィールド名にできます。~
 ~
 &attachref(faq3_199_01.png);~
 ~
 このクエリーを実行すれば、下図のように各レコードの合計欄をテーブルに付加できます。~
 ~
 &attachref(faq3_199_02.png);~
 ~
 上記の設定を行ったサンプルのデータベース~
 &attachref(faq3_199_01.odb);~
 も用意しました。~
 ~
 なお、テーブルのレコード合計欄の集計結果を求めた「商品合計」クエリーも用意しておきました。~
 ~
 ということで、質問される場合は、このようなサンプルを、テーブルだけでも良いので作成するようにしてください。~
 
 //
 ***無題 [#fe11d354]
 >初心者 (2006-08-02 14:08:10 (水))~
 ~
 faq3_199_01.odbのファイルが開けませんでしたが~
 やっとクエリーでデータフィールドの合計が出せました!~
 合計データはさらに次のクエリやCalcとかで関連付け出来ますか?~
 
 //
 ***関連付け [#s644db83]
 >kaito (2006-08-02 14:58:24 (水))~
 ~
 関連付けとは活用したいと読み替えます。~
 クエリの結果を更に別のクエリで使用することは、私が知る限り出来ないようです。クエリー作成ではテーブルのみ表示した。(accessでは可能)~
 Calcでは、表示−データソースでbaseのデータを見ることが出来ます。~
 
 //
 ***無題 [#b65f5185]
 >初心者 (2006-08-02 15:33:12 (水))~
 ~
 Calcで表示−データソースでbaseのデータを見ることが出来ます。~
 そこまではわかりましたが、見たデータを移す事や関連付け(ハイパーリンク)は出来ませんか?~
 
 //
 ***odbファイルがzipファイルと認識されたのかも [#z68d4dde]
 >M.Kamataki (2006-08-02 15:44:28 (水))~
 ~
 すみません。~
 >>>faq3_199_01.odbのファイルが開けませんでしたが~
 <
 >
 環境によっては、ZIPファイルと解釈される場合があります。ダウンロードしたファイルが、ZIPファイルと解釈されてしまったら、拡張子をodbに変更してみてください。~
 >>>合計データはさらに次のクエリやCalcとかで関連付け出来ますか?~
 <
 >
 最初からクエリーで用いる予定なら、テーブルカテゴリにある「ヴューを作成」メニューでテーブルとして登録すると良いです。%%また、クエリーで作成したものも、コピーしたらテーブルカテゴリに切り替えて、[編集]−[貼り付け]すれば「ヴューを作成」メニューで作成したことと同じことになります。%%また、クエリーで作成したものをマウスの右クリックで表示されるメニューで、「ビューとして作成」を選ぶとテーブルになります。ただし、これはリードオンリーになります。ほかに、クエリーで作成したものをコピーして、テーブルカテゴリに切り替えて、[編集]−[貼り付け]すると、テーブルとして登録できます。この場合は、データの更新は可能ですが、異なるテーブル扱いになるので注意してください。用途に応じて使い分けてください。~
 ~
 こちらの変更を加えて、新しい~
 &attachref(faq3_199_01.odb);~
 を作成しました。拡張子がおかしかったら、odbに変更して開いてみてください。~
 
 //
 ***完了にしてよろしいですか [#n41c63a8]
 >M.Kamataki (2006-08-02 16:10:58 (水))~
 ~
 当初の当質問内容からすると、完了になると思います。~
 ~
 Calcからの参照については、わたしが以前紹介した「オープンガイドブック OpenOffice.org 2.0」に書きました。このPDF版をお読みいただき、わからなかったら改めて、ご質問ください。Writer、Calcとの連動については、以下のドキュメントも用意してあります。~
 -[[「Writer、Calcとデータベースの連携」>http://openoffice-docj.sourceforge.jp/wiki/index.php/Documentation/2.0Project/Part7/4]]~
 
 //
 ***無題 [#d18d0fd6]
 >初心者 (2006-08-02 16:18:33 (水))~
 ~
 出来ました!~
 完了でいいです!~
 
 //
 ***完了にします [#x92adc6f]
 >M.Kamataki (2006-08-02 17:00:21 (水))~
 ~
 コメントいただきましたので、完了にします。~
 
 //
 ***修正 [#f3bf60bb]
 >M.Kamataki (2006-08-03 11:05:48 (木))~
 ~
 タイトルの誤字を直しました。~
 
 //
 ***クエリー in クエリー [#h1586099]
 >M.Kamataki (2009-01-10 22:52:06 (土))~
 ~
 補足します。既存のクエリーをクエリーの基にする(クエリー in クエリー)は、2.0.4から可能になっています。~
 
 //
 #article
 //#comment