中易网

数据库中查询一个男生比女生多的班级数?怎么用查询? 求代码。

答案:2  悬赏:20  
解决时间 2021-02-14 23:34
数据库中查询一个男生比女生多的班级数?怎么用查询? 求代码。
最佳答案
你没有说明数据库结构,假如数据库结构如下:

TB_ClASS(班级数据表,主键:class_id)
-------------------------
| class_id | class_name |
-------------------------

TB_STUDENTS(学生信息表,主键:student_id,外键:class_id)
-------------------------------
| student_id | sex | class_id |
-------------------------------

那么建议先按照班级建立视图,然后从视图中查询。
建立视图:
SELECt TB_STUDENT.class_id, TB1.male AS male, TB2.female
FROM TB_STUDENT LEFT OUTER JOIN
(SELECt class_id, COUNT(student_id) AS male
FROM TB_STUDENT AS TB_STUDENT_1
WHERe (student_sex = '男')
GROUP BY class_id) AS TB1 ON TB_STUDENT.class_id = TB1.class_id LEFT OUTER JOIN
(SELECt class_id, COUNT(student_id) AS female
FROM TB_STUDENT AS TB_STUDENT_2
WHERe (student_sex = '女')
GROUP BY class_id) AS TB2 ON TB_STUDENT.class_id = TB2.class_id
GROUP BY TB_STUDENT.class_id, TB1.male, TB2.female

得到如下视图形式:
class_sex_view
----------------------------
| class_id | male | female |
----------------------------

再用以下简单查询即可:
select count(class_id)
from class_sex_view
where male>female
全部回答
搜一下:数据库中查询一个男生比女生多的班级数?怎么用查询? 求代码。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
我是外地人,我最近想在上海找份工作,能不能
湖北师范大学-学报编辑部地址有知道的么?有
今天是三月六日,推迟两天是几月几号
贵州省机动车驾驶员培训教练员从业资格证考试
不好意思各位刚才我有失误,求文艺一点儿的名
浓缩咖啡的萃取注意事项?
北京北站列车经过吉林没
苹果笔记本的蓝牙鼠标连接不上笔记本 是为何?
天安财产保险股份有限公司钟山支公司在什么地
小阅读语段训练:阅读下面语段,选出符合要求
企业可持续发展战略的书籍有哪些
新黄山商业步行街怎么去啊,有知道地址的么
有人认为描写藤野先生用了四个事例太多,不如
梗在哪里呢
数着时间过日子是什么意思
推荐资讯
为什么我们这农村女的补缴社保也是到60岁开始
深圳荷兰小镇好玩吗
腾讯支付宝退款
朋友用我的店名和注册帐号做了个假营业执照,
阿伟海鲜烧烤在什么地方啊,我要过去处理事情
鞍山市内有没有浦东发展银行鞍山支行?具体地
想把它移植出来,请问大神扦插能活吗?这应该
星游记之风暴法米拉百度云资源
学长你好,我准备报考海大的地图学与地理信息
什么样的职业走遍天下都不怕,具备糊口、传承
石家庄铁路职业技术学院2015年单招会计专业怎
英雄联盟无法游戏,选完英雄读取不出游戏界面
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?