2

我有一些评估数据。可能的值为 (1,2,3,4,5) 并存储在表中,每个问题 1 列。

表评:

f1 f2 q3 ...
1  5  2
2  4  3
.
.
.

我想为 2 列 1 矩阵生成:

How often is f1=1 when q3=1?
How often is f1=1 when q3=2?
...
How often is f1=5 when q3=5?

所以在我的例子中是一个 5*5 的矩阵。我怎样才能用mysql正确解决这个问题?

我的第一个(工作)尝试是用 25 个工会强行使用它,例如:

SELECT count(0) FROM evaluation where q3 = 1 and f2 = 1
union all
SELECT count(0) FROM evaluation where q3 = 1 and f2 = 2
union all
...
union all
SELECT count(0) FROM evaluation where q3 = 5 and f2 = 5

但如何才能以一种好的方式完成呢?

4

1 回答 1

1
SELECT f1, count(f1), f3
FROM evaluation
GROUP BY f3, f1

将为您提供所有 f3 值的 f1 计数。

于 2012-11-17T04:03:58.583 回答