現在ACCESSの勉強をしています。
1~6までの数字が書かれた6枚のカードから3枚を同時に引いて
出たカードの数字を記録していくデータベースを作るとき、
・同時に引いた3枚が1,3,6だった時
「1」のレコードに同時に出たカードの数字、3.6をカウント
「3」のレコードに同時に出たカードの数字、1.6をカウント
「6」のレコードに同時に出たカードの数字、1.3をカウント
数字(1~6)ごとに同時に引いた残り2枚の数字を
記録していくクエリを作りたいのですが
このような集計をするには
どのようにクエリを作成すればよいのでしょうか?
作成方法がわかる方、ご助力をよろしくお願いいたします。
No.3ベストアンサー
- 回答日時:
簡単にするには、クエリを2つ作ります。
結果クロス集計にご希望の結果が得られます。
クエリ:結果クロス集計
SELECT 結果テーブル.[1枚目] AS 元, 結果テーブル.[2枚目] AS 相手
FROM 結果テーブル
UNION ALL
SELECT 結果テーブル.[1枚目] AS 元, 結果テーブル.[3枚目] AS 相手
FROM 結果テーブル
UNION ALL
SELECT 結果テーブル.[2枚目] AS 元, 結果テーブル.[1枚目] AS 相手
FROM 結果テーブル
UNION ALL
SELECT 結果テーブル.[2枚目] AS 元, 結果テーブル.[3枚目] AS 相手
FROM 結果テーブル
UNION ALL
SELECT 結果テーブル.[3枚目] AS 元, 結果テーブル.[1枚目] AS 相手
FROM 結果テーブル
UNION ALL
SELECT 結果テーブル.[3枚目] AS 元, 結果テーブル.[2枚目] AS 相手
FROM 結果テーブル;
クエリ:結果ユニオン
TRANSFORM Count(結果ユニオン.相手) AS 相手のカウント
SELECT カードテーブル.カード
FROM カードテーブル LEFT JOIN 結果ユニオン ON カードテーブル.カード=結果ユニオン.元
GROUP BY カードテーブル.カード
PIVOT 結果ユニオン.相手 In (1,2,3,4,5,6);
回答ありがとうございます。
記入していただいた2つのクエリを作ったら
同時に出た数字の集計が出来ました。
No2の方とSQL文は違うのに
同じ結果になるとは…
奥が深いです…
どのように組み合わせを発想するかが
肝要なのですね
No.4
- 回答日時:
#3です。
クエリ名が逆でした。
上の方が「結果ユニオン」
下が「結果クロス集計」です。(--;
No.2
- 回答日時:
なかなか難しいですね。
テーブル1つとクエリ2つ追加でやってみました。(1) テーブルの追加
まず、「ペアテーブル」を追加します。フィールドは「ペア」(数値型)1フィールドのみで、その内容は、
12
13
21
23
31
32
の6レコードとします。
(2) クエリの追加
次にクエリ「Q_同時に出たカード」を追加します。以下をSQLビューでペーストしたら、デザインビューに戻して構いません。
SELECT IIf(Left([ペア],1)=1,[1枚目],IIf(Left([ペア],1)=2,[2枚目],[3枚目])) AS カード, IIf(Right([ペア],1)=1,[1枚目],IIf(Right([ペア],1)=2,[2枚目],[3枚目])) AS 同時に出たカード
FROM 結果テーブル, ペアテーブル;
(3) クエリの追加(その2)
最後にクロス集計クエリを作成します。その内容は、
TRANSFORM Count(Q_同時に出たカード.同時に出たカード) AS 同時に出たカードの枚数
SELECT Q_同時に出たカード.カード
FROM Q_同時に出たカード
GROUP BY Q_同時に出たカード.カード
PIVOT Q_同時に出たカード.同時に出たカード;
最後のクロス集計クエリを実行すると、ご所望の結果が得られると思います。
回答ありがとうございます。
教えていただいたとおり入力したら出来ました。
SQL文までまだ習ってないので
それぞれの関数を調べつつやりました。
きっちりわかってないと操るのは難しそうですね。
がんばります。
No.1
- 回答日時:
現在のテーブルの構造では結果テーブルのフィールドの値と、最終的に表示させるテーブルのフィールド名を関係付けようとしているのでVBAを使用しないと難しいかもしれません。
結果テーブルの構造以下のようにを見直せば、簡単なクエリで済むと思います。
フィールド名 [回数],[1],[2],[3],[4],[5],[6]
[1]~[6]のフィールドの値は、
引かれたカードの値を = 1
引かれなかったカードの値 = 0
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 統計学 確率の問題です。 7 2022/05/07 01:08
- 統計学 確率の問題です。お詳しい方よろしくお願いします。 8 2022/12/04 17:01
- 数学 数学A 確率 赤、青、黄、緑の4色のカードが5枚ずつあり、各色のカードに1から5までの数字が1つずつ 4 2023/04/21 10:06
- 数学 1から9の数字を書いたカードが一枚ずつある。これらの9枚のカードから同時に2枚を取り出し、数字の大き 5 2022/04/25 15:38
- 数学 数学A、確率の問題です。 nを4以上の自然数とする。数字の1からnが書かれたカードが1枚ずつ、合計n 3 2023/07/02 22:54
- 数学 写真の問題の(4)についてですが、例えば赤のカードにおいて、他の数字は1枚ずつのままで5が2枚(他の 4 2023/07/29 03:49
- 統計学 確率計算について 1 2022/06/07 18:53
- 数学 「1~5の数字が書かれたカードが5枚ある。(すべてのカードには異なった数字が書かれている) この5枚 4 2023/02/16 11:22
- Excel(エクセル) Countifよりも早く重複数をカウントする方法ありますか? 18 2022/07/04 13:39
- Excel(エクセル) countif関数について質問 4 2022/06/14 12:11
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
2つのテーブルに共通するレコ...
-
Acccessで2つのテーブルから1...
-
最新日のデータのみ抽出するク...
-
Accessでリストの並び順を変更...
-
テーブルに表示されているもの...
-
ユニオンクエリをデザインビュ...
-
ACCESSでリンクテーブルのデー...
-
ACCESSユニオンクエリから新テ...
-
Accessのリレーションシップウ...
-
ACCESSでテーブルをコピーしよ...
-
AccessのフィールドにIPアドレ...
-
アクセスで作業の履歴を蓄積す...
-
ACCESS テーブルを見比...
-
アクセス・デザインビューのレ...
-
DreamWeaverでテーブルの位置を...
-
ACCESSで出欠リストを管理する
-
ACCESS初心者 - 同一テーブルの...
-
access2000・・テーブルをデー...
-
Accessで、別のテーブルにある...
-
Microsoft Access 「Form」のボ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
2つのテーブルに共通するレコ...
-
最新日のデータのみ抽出するク...
-
テーブルに表示されているもの...
-
Accessのリンクされたテーブル...
-
Acccessで2つのテーブルから1...
-
access vbaにてテンポラリーテ...
-
Accessで使用しているリンクテ...
-
Accessでリストの並び順を変更...
-
ACCESSのODBCリンクテーブルの...
-
Accessのテーブルで、リンク?...
-
ACCESS テーブルを見比...
-
ACCESSユニオンクエリから新テ...
-
クエリで同一テーブルの複数回...
-
アクセス2016 チェックボックス...
-
ACCESSでテーブルをコピーしよ...
-
html、テーブル内にテーブル。...
-
Microsoft Access 「Form」のボ...
-
アクセス 部分一致の抽出
-
ACCESS テーブルを見比...
-
Accessでリンクテーブルからロ...
おすすめ情報