如图所示,result是结果的意思,tinyint型,只有0或1两种数值[0失败,1成功],如何一次性查询出0和1各有多少,并显示比例。
查询结果显示为:
成功,失败,成功率
1900,6000,24.05%
这样显示
如图所示,result是结果的意思,tinyint型,只有0或1两种数值[0失败,1成功],如何一次性查询出0和1各有多少,并显示比例。
查询结果显示为:
成功,失败,成功率
1900,6000,24.05%
这样显示
sql
select result,count('result') as total from table GROUP BY result
成功率前台输出的时候算一下就行了 , 没必要这么纠结用sql直接算出来吧,sql语句里面最好不使用函数
SELECT result, SUM,total,CONCAT(SUM/total*100, '%') AS percent
FROM (
SELECT result,COUNT(result) AS SUM ,total
FROM `table` t,
(
SELECT COUNT(result) AS total FROM `table`
) a
GROUP BY result
) b
这种情况虽然可以通过SQL搞定,但是还是不要这样来搞统计,SQL看着别扭不说,效率不咋地。
1 回答2.6k 阅读✓ 已解决
5 回答1.5k 阅读
2 回答2.2k 阅读
3 回答767 阅读✓ 已解决
1 回答1k 阅读
1 回答695 阅读✓ 已解决
1 回答994 阅读
这个我会。。。。