Date: prev next · Thread: first prev next last


堀と申します。

こんな感じでは、どうでしょうか。LO5.3で確認しています。
クエリーフィールドに 「to_char("日付",'YYYY/MM')」
エイリアスに 「年月」
関数に 「GROUP」
※「」は入力しません。
を入力し、実行してみると、私の環境では月ごとの合計金額が取得できました。
しかし、再度、編集でクエリデザインを表示すると、なぜか、新たな列が追加さ れ、to_char([日付],'YYYY/MM')が追記されています。原因は不明というか追求 していません。一応、結果オーライです。
以上参考までに。


On 2017年02月07日 03:49, Takeshi Abe wrote:
On Mon, 6 Feb 2017 12:58:46 +0900, 福永ケンセイ <merumaga1407@gmail.com> wrote:
日付を月でまとめて集計したいのですが。

ACCESSでは
フィールドに
1)年月:format([日付],"yyyy/mm")を入力
2)次のフィールドに商品分類、金額を追加
3)集計行を表示させて
4)集計方法を設定
5)クエリー実行でできるようなのですが

baseでは1)の段階で”不明”のエラーメッセージ出ます。
どのようにしたらよいでしょうか?
Baseでは利用しているデータベースによって使える関数が変わります。
LibreOffice 5.2や5.3では、
1. まず日付型のカラムを含むクエリーをウィザードなどで作成する
2. そのクエリーのコンテキストメニューから「SQL表示で編集」を選択し、SQLの該当の
   カラム部分を編集する
3. このクエリーを使ってレポートのウィザードでグルーピングする
というステップで上のような集計が可能です。

例としてfoo、bar、bazという3つのカラムを持つテーブルTable1を集計するとします。
このうちbazが該当の日付型のカラムとします。
データベースにHSQLDBを使っているなら、例えば
SELECT "Table1"."foo" AS "foo", "Table1"."bar" AS "bar", "Table1"."baz" AS "baz" FROM "Table1" 
"Table1"
というSQLを
SELECT "Table1"."foo" AS "foo", "Table1"."bar" AS "bar", TO_CHAR( "Table1"."baz", 'YYYY/MM' ) AS "baz" FROM 
"Table1" "Table1"
のように編集します。

データベースにFirebirdを使っている場合にはTO_CHAR関数がないため、代わりに
SELECT "Table1"."foo" "foo", "Table1"."bar" "bar", LPAD( EXTRACT( YEAR FROM "Table1"."baz" ), 4, '0' ) || '/' || LPAD( EXTRACT( MONTH FROM 
"Table1"."baz" ), 2, '0' ) "baz" FROM "Table1" "Table1"
のようにします。

-- Takeshi Abe

--
/////////////////////////////
志義ゼミナール 小郡校
(福岡国際高等学院小郡校)
堀 正和
〒838-0141
福岡県小郡市小郡630-62
志義>TEL/FAX:0942-73-1710
国際>TEL/FAX:0942-55-4801
/////////////////////////////



--
Unsubscribe instructions: E-mail to users+unsubscribe@ja.libreoffice.org
Posting guidelines + more: http://wiki.documentfoundation.org/Netiquette
List archive: http://listarchives.libreoffice.org/ja/users/
All messages sent to this list will be publicly archived and cannot be deleted

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.