簡體   English   中英

計算按其他值分組的不同值對

[英]Count distinct pair of values grouped by other values

訪問2013 SQL。

我有2個表通過共享的“ ID”字段加入。

我想要一個按書本和名稱分組的不同fld1 + fld2值計數。

請在Access 2013 SQL中執行此操作。 經過2小時的嘗試,我沒有任何東西不會產生語法錯誤或其他匯總錯誤。

示例數據:

Table1
ID, Name
1, "John"
2, "John"
3, "John"
1, "Tom"
3, "Tom"
3, "Jack"


Table2
ID, Book, Fld1, Fld2
1, "A", 1, 1
2, "A", 1, 2
2, "A", 1, 2
1, "B", 1, 1
2, "B", 1, 3
3, "B", 1, 3

預期結果集:

Book, Name, Count()
A, John, 2
A, Tom, 1
A, Jack, 0
B, John, 2
B, Tom, 2
B, Jack, 1

謝謝。

匯總之前,請使數據與眾不同:

select id2, id3, count(*)
from
(
  select distinct t1.id2, t2.id3, t2.fld1, t2.fld2
  from table1 t1
  join table2 t2 on t2.id = t1.id
) t
group by t.id2, t.id3;

這似乎是一個基本的JOINGROUP BY

select t2.fld1, t2.fld2, count(*)
from t1 inner join
     t2
     on t1.id = t2.id
group by t2.fld1, t2.fld2;

我不確定您所說的“獨特組合”是什么意思。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM