No.3ベストアンサー
- 回答日時:
テーブル構造
--------------------
日付TBL.日付
日付TBL.数値
**********************************
参考クエリ
**********************************
1."月集計"という名前のクエリを以下のSQLで作ります。
このクエリは、当日までの各月の数値の集計です。
出力項目は
月・・・ YYYY/MM
月合計・・・ 月の数値の合計
SELECT Format$([日付],'yyyy/mm') AS 月, Sum(日付TBL.数値) AS 月合計
FROM 日付TBL
WHERE (((日付TBL.日付)<=Now()))
GROUP BY Format$([日付],'yyyy/mm')
2."年集計"という名前のクエリを以下のSQLで作ります。
このクエリは、当日までの各年の数値の集計です。
出力項目は
年・・・ YYYY
年合計・・・ 年の数値の合計
SELECT Format$([日付],'yyyy') AS 年, Sum(日付TBL.数値) AS 年合計
FROM 日付TBL
WHERE (((日付TBL.日付)<=Now()))
GROUP BY Format$([日付],'yyyy')
3. 日付TBLと1.、2.で作成したクエリ(月集計、年集計)3つを使い
サブクエリを作る。
SELECT 日付TBL.日付, 日付TBL.数値,
Format$([日付],'yyyy') AS 年, 年集計.年合計,
Format$([日付],'yyyy/mm') AS 月, 月集計.月合計
FROM 日付TBL, 月集計, 年集計
WHERE (((Format$([日付],'yyyy'))=[年集計].[年]) AND ((Format$([日付],'yyyy/mm'))=[月集計].[月]))
4. クエリを参照している部分をSQL文にする。
No.2を参考にしてください。
FROM (Sql文) As 名前
名前の部分に クエリ名
SQL文の部分に クエリの内容(SQL文)
要するに月集計、年集計は作ったクエリを参照しているので
参照をやめ、SQL文に変えてしまうということです。
ただし、クエリをしっかり管理しておけば
1.、2.、3.までの工程で十分ですよ。
サブクエリは、結構使えるので是非覚えておいてください。
この回答への補足
今日ずっと取り組んでようやく完成いたしました。いろいろと勉強になり、特にSQLというのをもっと勉強できたらアクセスも使いやすくなるだろうなとおもいました。私のような良く分かっていない人間に貴重なお時間をさいてアドヴァイスをして下さった事感謝致します。
ありがとうございました。
何度もすいません。そしてありがとうございます。
日付TBL.日付は宿泊実績表:日ごと集計(本館)というクエリの宿泊日というフィールドで
日付TBL.数値は宿泊実績表:日ごと集計(本館)というクエリの合計というフィールドなので
それに置き換えて早速1.の月集計を作成しているのですが、
SELECT Format([宿泊日],'yyyy/mm')AS月, Sum(宿泊実績表:日ごと集計(本館).合計)AS月合計
FROM 宿泊実績表:日ごと集計(本館)
WHERE(((宿泊実績表:日ごと集計(本館).宿泊日)<=Now()))
GROUP BY Format$([宿泊日],'yyyy/mm')
を月集計クエリとしてSQLを入力すると
クエリ式:Format([宿泊日],'yyyy/mm')AS月の構文エラー:演算子がありませんというエラーメッセージが出て先にすすめないくなってしまいます。
演算子?ってことになってしまっています。
本当に何度もすいません。どうすればエラーをクリアーできますでしょうか?
No.4
- 回答日時:
レポートの作り方ですが、
テーブルを元に ウイザードを使用してレポートを作成します。
レポートをデザイン画面にします。
”並べ替え/グループ化” の設定をします。
(表示(V)のところにあります。)
”並べ替え/グループ化”のフィールド/式を
日付を設定した フィールド名 にします。
グループプロパティは
グループフッター を はい
グループごと を 年
グループ間隔 を 1 にします。
グループヘッダー と 同一ページ印刷はとりあえずそのまま。
もう1段 フィールド/式 を設定します。
これも、日付を設定した フィールド名 にします。
グループプロパティは
グループフッター を はい
グループごと を 月
グループ間隔 を 1 にします。
グループヘッダー と 同一ページ印刷はとりあえずそのまま。
これで、レポートのデザイン画面に 日付用の フッターが 2つできます。
それぞれの フッターに テキストボックスを 1つ づつ配置します。
コントロールソースは 両方とも
=Sum([数量]) にします。
[数量] は 数量を設定しているフィールド名にします。
以上です。
No.2
- 回答日時:
サブクエリを使用すれば可能ですよ。
作り方は、年集計、月集計を行ったクエリを作っておき
新しいクエリに作ったクエリを追加し表示項目(集計値)と
接続項目もしくは条件項目(この場合は、それぞれ年と月)
を使いクエリを完成させ保存、その後、
SQL文を表示させ FROM句のそれぞれクエリ名の所に
下記の形でSQL文を追加すれば完成
FROM (Sql文) As クエリ名
サブクエリ部分にはオーダーなど使えないので注意してください。
テーブル構造
--------------------
日付TBL.日付
日付TBL.数値
**********************************
参考クエリ
**********************************
SELECT 日付TBL.日付, 日付TBL.数値,
Format$([日付],'yyyy') AS 年, 年集計.年合計,
Format$([日付],'yyyy/mm') AS 月, 月集計.月合計
FROM 日付TBL,
(
SELECT Format$([日付],'yyyy/mm') AS 月, Sum(日付TBL.数値) AS 月合計
FROM 日付TBL
WHERE (((日付TBL.日付)<=Now()))
GROUP BY Format$([日付],'yyyy/mm')
) As 月集計,
(
SELECT Format$([日付],'yyyy') AS 年, Sum(日付TBL.数値) AS 年合計
FROM 日付TBL
WHERE (((日付TBL.日付)<=Now()))
GROUP BY Format$([日付],'yyyy')
) As 年集計
WHERE (((Format$([日付],'yyyy'))=[年集計].[年]) AND ((Format$([日付],'yyyy/mm'))=[月集計].[月]))
いろいろ書いていただいて本当に有難う御座います。ただ、実力不足でまだ??でいっぱいです。
*年集計、月集計を行ったクエリをつくっておき・・・とありますが、どうすればいいのかわかりません。情けないのですが…
そして、
*新しいクエリに作ったクエリを追加し、表示項目を使いクエリを完成させ・・・というのもピンと来ません。
折角書いていただいたので、自分なりにやっては見たのですが、うまく行かずまた質問を書かせていただきました。本当に申し訳ありませんがもう少し説明していただけませんでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) アクセスの更新クエリでカレントレコードのみ更新したい 1 2022/06/02 23:32
- その他(コンピューター・テクノロジー) 【Tableau Desktop】文字列から8桁の数字を日付型(yyyyMMdd)として取得 1 2023/07/31 10:17
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- Access(アクセス) Accessのクエリの結果を、既存のエクセルに追加したい 2 2022/07/31 22:44
- その他(Microsoft Office) ピボットテーブルへの集計フィールド挿入 1 2023/02/26 11:33
- Access(アクセス) お世話になっています いまクエリを作っています。。 デザインビューの画面の集計の欄で、「グループ化」 4 2022/09/17 17:03
- Access(アクセス) Accessクエリで年月フィールドを年のみで抽出する方法について 2 2022/08/29 18:10
- Access(アクセス) Access クエリ 同一テーブル内 複数フィールドの同時集計のやり方について 1 2022/05/18 19:01
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
日付型のフィールドに空白を入...
-
SQL文で パラメータが少なすぎ...
-
VBA 別シートの同じ日付の欄に...
-
Excleピボットでデータのない部...
-
BCPでCSV内の文字列をテーブル...
-
Accessの日付時刻型から日付、...
-
アクセスで月単位の抽出
-
指定日付を起点にして最新日付...
-
【エクセル】指定した日付に一...
-
【vba】日付の形式が勝手に変わ...
-
アクセスで日付データの和暦表...
-
エクセル-過去6カ月分の合計を...
-
エクセルで書式設定ではなく、...
-
Accessのデータ型の日付/時刻型...
-
SQL Server2005のクエリで「今...
-
Accessでnow()で取り出した日付...
-
式を簡単にしてください。ACCES...
-
ACCESS フォームの非連結の日...
-
sql update で 抽出条件データ...
-
【Accessで困っています...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
日付型のフィールドに空白を入...
-
SQL文で パラメータが少なすぎ...
-
Excleピボットでデータのない部...
-
アクセスで月単位の抽出
-
BCPでCSV内の文字列をテーブル...
-
Accessの日付時刻型から日付、...
-
VBA 別シートの同じ日付の欄に...
-
Excel→Accessへの日付データの...
-
Access クエリで、レコードの無...
-
指定日付を起点にして最新日付...
-
アクセス:既定値に土日含まず...
-
【エクセル】指定した日付に一...
-
ACCESSの空白をカウントする
-
Accessで日付の比較がうまくい...
-
【vba】日付の形式が勝手に変わ...
-
前のレコードの合計に現レコー...
-
エクセル-過去6カ月分の合計を...
-
Accessのデータ型の日付/時刻型...
-
【Accessで困っています...
-
アクセス97のVBAで日付項目をヌ...
おすすめ情報