各位都是怎么统计表中一个一字段出现重复的次数并将其分类的呢?

现有数据表如下

id text status
100 weeq 1
100 weeq 2
100 weeq 1
100 weeq 3
100 weeq 1
101 weeq 3
100 weeq 1
103 weeq 5
102 weeq 1
100 weeq 3
100 weeq 4
100 weeq 1
100 weeq 2
100 weeq 1
100 weeq 2
101 weeq 2
100 weeq 1
100 weeq 2
100 weeq 1
100 weeq 1

想获得id='100' 这个用户的status 4种状态出现的次数,各位应该秒懂了吧

最重要的是我要获得的是这种状态获得的次数哦,各位是怎么解决的呢?

$status = [
'one'   => 2 ,
'two'   => 3,
'three' => 12,
'four'  => 4 ,
];
one status = 1 时
two status = 2 时
three status = 3 时
four status = 4 时

大家都是什么样的SQL 解决的呀,膜拜最佳方案

阅读 3.4k
2 个回答

select status,count(1) as cnt
from table
where id=100
group by status

SQL没有设置键值的办法,本身只是查出数据而已。变成你希望的格式是需要自己处理的,有些框架已经封装好了,像tp可以用getfield()

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题