我有这样的数据库:
+-----+---------+--------------+
| id | user_id | form_answers |
+-----+---------+--------------+
| 1 | 1 | yes |
| 2 | 1 | M |
| 3 | 2 | yes |
| 4 | 2 | M |
| 5 | 3 | no |
| 6 | 3 | F |
| 7 | 4 | no |
| 8 | 4 | M |
+-----+---------+--------------+
有一个表格被插入到这个数据库中。它有一个问题和下拉列表(男性或女性)。是否可以统计男性(M)用户给出了多少个"is"的答案?它不必计算...它可以只选择男性用户回答"is"的所有行。
你可以加入自己的答案标签。这将返回男性用户给出的"is"答案列表:
SELECT a1.*
FROM answers a1 inner join answers a2
on a1.user_id=a2.user_id
and a1.form_answers='yes'
and a2.form_answers='M'
要计算行数,只需将选择行替换为:
SELECT COUNT(*)
参见 fiddle here .
我是一名优秀的程序员,十分优秀!