2020-12-06

Mysql数据库使用之基本查询

在学生信息表中输出每个班的班号和最高分,取前2名。
SELECT Sclass,sscore FROM t_student order by sscore DESC limit 2

在学生信息表中输出每个班的班号和人数并按照班号降序排列。
SELECT Sclass,count(sid) FROM t_student GROUP BY Sclass ORDER BY Sclass DESC

在学生信息表中输出每个系的系编号和系里面最小的一位学生的年龄,并重命名,结果按照系编号降序排列。
SELECT did,min(sage) 系学生最小年龄 from t_student GROUP BY did ORDER BY did DESC

在学生信息表中输出每个班的班号和平均分数及最低分和最高分并重命名。
SELECT Sclass,avg(sscore),max(sscore),min(sscore) FROM t_student GROUP BY sclass

在学生信息表中输出每个系的系编号及18岁以上有多少人,并按照系编
号降序排列。
SELECT did ,count(sage) FROM t_student where sage>18 GROUP BY did ORDER BY did DESC

在学生信息表中输出每个班的班级编号及班上名字是3个字的学生的个数并重命名,按照学生的个数的降序排列。
SELECT Sclass,count(sname) 三字为名的人数 FROM t_student where sname like ‘___’ GROUP BY Sclass ORDER BY count(sname) DESC

在学生信息表中输出每个系的系编号及系里面手机号是以“15”开头的学生的个数,按照系编号降序排列。
SELECT did, count(sphone) FROM t_student where Sphone like ‘15%’ GROUP BY Sphone ORDER BY did DESC

在学生信息表中输出17,19,20的年龄各有多少人,并按照人数的降序排列。
SELECT count(sage) FROM t_student GROUP BY sage HAVING sage in (17,19,20)

在学生信息表中输出每个班的班级编号及每个班有学号大于1208且年龄小于20且名字是两个字的学生的个数。
SELECT Sclass , count(sid) FROM t_student where sid >1208 and sage <20 and sname like ‘__’ GROUP BY Sclass

在学生信息表中输出每个系里面的每个班的系编号、班级编号、最高分、最低分。
SELECT did,sclass,max(sscore),min(sscore) from t_student GROUP BY did,sclass

在学生信息表中将450分以上的学生按照年龄分组,输出每个组的年龄和总人数,并按照年龄的降序排列。
SELECT sage,count(sage) from t_student where sscore >450 GROUP BY sage ORDER BY sage DESC

在学生信息表中将男生按照班级分组,输出班级编号、每个班平均年龄、最高分数。
SELECT Sclass,avg(sage),max(sscore) from t_student GROUP BY sclass

在学生信息表中将分数是450分以上的学生按照班级和年龄分组,输出每个组的人数,并用rollup统计。
SELECT count(sage) FROM t_student where Sscore >450 GROUP BY sage

在学生信息表中将19岁以上且分数是460分以上的学生按照系编号分组,并用rollup统计。
SELECT count(sage) FROM t_student where Sscore >460 and sage>19 GROUP BY did

在学生信息表中统计出每个班的最大年龄,并将最大年龄大于19岁的班级输出班级编号和最大年龄,并按班级的降序排列。
SELECT Sclass,max(sage) FROM t_student where sage >19 GROUP BY Sclass ORDER BY Sclass DESC

在学生信息表中统计出每个系的平均分数和平均年龄,并将平均分数小于550的结果输出来。
SELECT avg(Sscore) from t_student GROUP BY did

在老师信息表中统计出男女各有多少人,并按照人数降序排列。
SELECT ssex,count(ssex)from t_student GROUP BY ssex ORDER BY ssex DESC

在学生信息表中将1990年以后出生的学生且有系编号有班级编号的学生按照系编号、班级编号分组,统计出每个组的人数。输出每个组的系编号、班级编号和人数并按照人数升序排列取前3个结果。
SELECT count(sid),did,Sclass FROM t_student GROUP BY did,Sclass ORDER BY sid ASC limit 3

在学生信息表中查找出跟“App”在同一个班的学生的个数。
SELECT count(s2.sid) FROM t_student s1,t_student s2 where s1.sename =‘App’ and s1.Sclass = s2.Sclass

在学生信息表中查找出最高分的学生的姓名和电话号。
SELECT sname,Sphone FROM t_student where sscore = (SELECT max(sscore) FROM t_student )

在学生信息表中查找出考试分数在平均分以下的学生的学号和姓名,并按学号的降序排列。
SELECT sid,sname FROM t_student where sscore<(SELECT avg(sscore) FROM t_student )

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值