问卷调查,后台查看数据,关于sql的编写

问卷调查,关于选择题,后台查看数据,某一选择题 选A的个数 与此题 选择ABCD的个数 的比例、选B的个数 与此题 选择ABCD的个数 的比例、选C。。。。。

具体格式:(这里我就用以前的数据处理这道题,其中,name字段相当于题目的总括,里面的数据相当于具体的题目(zhangsan、lisi.....),grade就是所选择的ABCD,salary不用管,在这题没有实际的意义)

                              student表:

要求结果如下:例如zhangsan这题 选A的占67%,选B的占33%,选C的占0%,选D的占0%。

1、思考:

子查询、分组

2、编写:

sql语句:

select name,count(*) total,
ROUND((SELECT count(*) FROM student S1 WHERE grade='A' and S1.name=S2.name)/count(*),2) as A ,
ROUND((SELECT count(*) FROM student S3 WHERE grade='B' and S3.name=S2.name)/count(*),2) as B,
ROUND((SELECT count(*) FROM student S4 WHERE grade='C' and S4.name=S2.name)/count(*),2) as C,
ROUND((SELECT count(*) FROM student S5 WHERE grade='D' and S5.name=S2.name)/count(*),2) as D
from student S2 group  by name

 

 

 


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部