Dav*_*vid 6 sql ms-access group-by count
我试图计算多个列然后分组总和,其中相同的数据出现在任何列中
Source data table:
P1 P2 P3
-----------
a b
a a a
b c
a b b
b a
Run Code Online (Sandbox Code Playgroud)
我想要它显示这样的东西:
Desired query output:
Total
-------------
a | 6
b | 5
c | 1
Run Code Online (Sandbox Code Playgroud)
您可以使用联合查询
SELECT x.f1,Count(x.f1) FROM
(SELECT p1 As F1 FROM table
UNION ALL
SELECT p2 As F1 FROM table
UNION ALL
SELECT p3 As F1 FROM table) x
GROUP BY x.f1
Run Code Online (Sandbox Code Playgroud)
您可以union all
在子查询和外部查询中记录count
每个值.
SELECT b.a, COUNT(b.a)
FROM
(
SELECT P1 a
FROM tableName
UNION ALL
SELECT P2 a
FROM tableName
UNION ALL
SELECT P3 a
FROM tableName
) b
GROUP BY b.a
Run Code Online (Sandbox Code Playgroud)