Php 如何在MYSQL/SQL中查询此场景的计数结果?

Php 如何在MYSQL/SQL中查询此场景的计数结果?,php,mysql,sql,codeigniter,Php,Mysql,Sql,Codeigniter,桌子是这样的 Result ------ type1_choice_1 type1_choice_2 type2_choice_1 type2_choice_2 type3_choice_1 type3_choice_2 有3种类型,每种类型有2种选择,对于每种选择,可能的数据是1到10。例如,type1\u choice\u 1可以是5,那么type1\u choice\u 2可以是6 我已经插入了数据。问题是我需要查询结果。对于每列,计算用户选择的数量 这意味着,例如,对于type1_ch

桌子是这样的

Result
------
type1_choice_1
type1_choice_2
type2_choice_1
type2_choice_2
type3_choice_1
type3_choice_2
有3种类型,每种类型有2种选择,对于每种选择,可能的数据是1到10。例如,type1\u choice\u 1可以是5,那么type1\u choice\u 2可以是6

我已经插入了数据。问题是我需要查询结果。对于每列,计算用户选择的数量

这意味着,例如,对于type1_choice_1,我需要知道有多少人选择1,有多少人选择2。。。。给多少人选择10个。其他选择也是如此

如何使查询最有效(并且可读)?谢谢你的帮助


*注意:非常感谢您使用codeigniter语法,但这并不重要,我可以将MySQL查询转换为它。

您可以尝试以下操作:-

SELECT type, choice, COUNT(data)
FROM your_table
GROUP BY choice, type;

是1到10个数据在不同的列中,还是只有一列,并且eatch类型的数据可以重复1到10次。您的表中是否只有列“Result”,并且数据类型是TEXT或VARCHAR?我会选择*并在对结果进行迭代时,将结果累积到一个数组中(既然你把这个问题贴成了php问题,我想你可能会使用php解决方案,尽管看起来你实际上在寻找一个sql答案)@Zafar,数据可以重复1到10次,因此,type1_choice_1可以是1,1,10,type1_choice_2可以是10 23@user782104我肯定会选择php