mysql基础--测试题讲解

/*已知表stuinfo
id 学号
name 姓名
email 邮箱   john@126.com
graddeId  年级编号
sex        性别
age        年龄

已知表grade
id 年级编号
gradeName 年级名称
*/
#1.查询所有学员的邮箱的用户名(注:邮箱中@前面的字符)
SELECT SUBSTR(email,1,INSTR(email,'@')-1) 用户名
FROM stuinfo;
#2.查询男生和女生的个数
SELECT COUNT(*)
FROM  stuinfo
GROUP BY sex;
#3.查询年龄>18岁的所有学生的姓名和年级名称
SELECT  NAME,gradeName
FROM stuinfo s
INNER JOIN  grade g
ON s.gradeId=g.id
WHERE age>18;
#4.查询哪个年级的学生最小年龄>20岁
#(1)查询每个年级的最小年龄
SELECT MIN(age),gradeId
FROM stuinfo
GROUP BY gradeId;
#在(1)的基础上筛选
SELECT MIN(age),gradeId
FROM stuinfo
GROUP BY gradeId
HAVING MIN(age)>20;

#5.试说出查询语句中涉及到的所有的关键字,以及执行先后顺序
SELECT 查询列表    (7)
FROM(1)
连接类型 JOIN2  (2)
ON 连接条件        (3)
WHERE 筛选条件     (4)
GROUP BY 分组列表  (5)
HAVING 分组后的筛选(6)
ORDER BY 排序列表  (8)
LIMIT 偏移,条目数 (9)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值