正如您在下面的图片中所看到的,我需要计算每一列中有多少个数字'1‘,数字'1’意味着被采访的人在家中(AP_4_01)、工作场所(AP4_4_02)等都感到安全。
数字2=不安全
数字3=不适用
数字9=没有回答
+----------+----------------------+
| Columns | Numbers of persons |
+----------+----------------------+
| AP4_4_01 | 312 |
| AP4_4_02 | 232 |
| AP4_4_03 | 345 |
| AP4_4_0X | XXX |
+----------+----------------------+

发布于 2016-05-24 23:29:23
您只需要在一些case语句上使用SUM函数
SELECT
SUM(CASE WHEN AP_4_01 = 1 THEN 1 ELSE 0 END)
,SUM(CASE WHEN AP_4_02 = 1 THEN 1 ELSE 0 END)
...etc
FROM Table要获得类似于问题中的结果集,您需要使用UNPIVOT函数,或者可以在excel中转换它。
https://stackoverflow.com/questions/37425482
复制相似问题