MySQL条件查询练习题(含答案)

创建学生表:
根据图创建数据表,进行查询练习
在这里插入图片描述
在这里插入图片描述
1.查询性别为女,并且年龄50的记录

2.查询学号为S_1001,或者姓名为liSi的记录

3.查询学号为S_1001,S_1002,S_1003的记录

4.查询学号不是S_1001,S_1002,S_1003的记录

5.查询年龄为null的记录

6.查询年龄在20到40之间的学生记录

7.查询性别非男的学生记录

8.查询姓名不为null的学生记录

创建语句答案:

CREATE TABLE stu (
sidCHAR(6),
snameVARCHAR(50),
ageINT,
genderVARCHAR(50)
);

添加语句答案:

INSERT INTO stu VALUES('S_1001', 'liuYi', 35, 'male');
INSERT INTO stu VALUES('S_1002', 'chenEr', 15, 'female');
INSERT INTO stu VALUES('S_1003', 'zhangSan', 95, 'male');
INSERT INTO stu VALUES('S_1004', 'liSi', 65, 'female');
INSERT INTO stu VALUES('S_1005', 'wangWu', 55, 'male');
INSERT INTO stu VALUES('S_1006', 'zhaoLiu', 75, 'female');
INSERT INTO stu VALUES('S_1007', 'sunQi', 25, 'male');
INSERT INTO stu VALUES('S_1008', 'zhouBa', 45, 'female');
INSERT INTO stu VALUES('S_1009', 'wuJiu', 85, 'male');
INSERT INTO stu VALUES('S_1010', 'zhengShi', 5, 'female');
INSERT INTO stu VALUES('S_1011', 'xxx', NULL, NULL);

查询答案:

1.查询性别为女,并且年龄50的记录

SELECT * FROM stu 
WHERE gender='female' AND ge<50;

2.查询学号为S_1001,或者姓名为liSi的记录
SELECT * FROM stu 
WHERE sid ='S_1001' OR sname='liSi';

3.查询学号为S_1001S_1002S_1003的记录
SELECT * FROM stu 
WHERE sid IN ('S_1001','S_1002','S_1003');

4.查询学号不是S_1001S_1002S_1003的记录
SELECT * FROM tab_student 
WHERE s_number NOT IN ('S_1001','S_1002','S_1003');

5.查询年龄为null的记录
SELECT * FROM stu
WHERE age IS NULL;

6.查询年龄在2040之间的学生记录
SELECT * 
FROM stu
WHERE age>=20 AND age<=40;
或者
SELECT * 
FROM stu 
WHERE age BETWEEN 20 AND 40;   

7.查询性别非男的学生记录
SELECT * 
FROM stu
WHERE gender!='male';
或者
SELECT * 
FROM stu
WHERE gender<>'male';
或者
SELECT * 
FROM stu
WHERE NOT gender='male';

8.查询姓名不为null的学生记录
SELECT * 
FROM stu
WHERE sname IS NOT NULL;
或者
SELECT * 
FROM stu
WHERE NOT sname IS NULL;

希望大家对大家学习MySQL有帮助

计算机二级mysql数据库程序设计练习题(五)- 卷面总分:60分 答题时间:60分钟 试卷题量:30题 一、单选题(共29题,共58分) 1.要消除查询结果集中的重复值,可在SELECT语句中使用关键字______。 A.UNION B.DISTINCT C.LIMIT D.REMOVE 正确答案:B 您的答案: 本题解析: 暂无解析 2.在MySQL的SQL语句中,要实现类似分页功能的效果,可使用______。 A.LIMIT B.ORDERBY C.WHERE D.TRUNCATE 正确答案:A 您的答案: 本题解析: 暂无解析 3.对于SQL查询:SELECT*FROMtbl_nameWHEREid=(SELECTidFROMtbl_name),假设该表中 包含id字段,那么该语句正确执行的条件是______。 A.该表中必须有多条记录 B.该表中必须只有一条记录 C.该表中记录数必须小于等于一条 D.此SQL语句错误,无论如何都无法正确执行 正确答案:C 您的答案: 本题解析: 暂无解析 4.设有学生表student,包含的属性有学号sno、学生姓名sname、性别sex、年龄age、所 在专业smajor。下语句正确的是______。 A.SELECTsno,snameFROMstudentORDERBYsnameUnionSELECTSRO,snameFROMstudentWHERE smajor="CS"; B.SELECTsno,snameFROMstudentWHEREsex="M"UnionSELECTSno,shame,sexFROMstudentW HEREsmajor="CS"; C.SELECTsno,snameFROMstudentWHEREsex="M"ORDERBYsnameUnionSELECTsno,snameFRO MstudentWHEREStupor="CS"; D.SELECTsno,snameFROMstudentWIlEREsex="M"UnionSELECTsno,snameFROMstudentWHE REsmajor="CS"; 正确答案:D 您的答案: 本题解析: 暂无解析 5.学生表student如下所示:下面SQL语句中返回值为3的是______。 A.SELECTCOUNT(*)FROMstudent; B.SELECTCOUNT(所在系编号)FROMstudent; C.SELECTCOUNT(*)FROMstudentGROUPBY学号; D.SELECTCOUNT(*)FROMstudentGROUPBY学号; 正确答案:D 您的答案: 本题解析: 暂无解析 6.查找学生表student中姓名的第二个字为"t"的学生学号Sno和姓名sname,下面SQL语句 正确的是______。 A.SELECTSRO,shameFROMstudentWHEREsname="_t%"; B.SELECTSno,snameFROMstudentWHEREshameLIKE"_t%"; C.SELECTsno,shameFROMstudentWHEREsname="%t_"; D.SELECTsno,shameFROMstudentWHEREsnameLIKE"%t_"; 正确答案:B 您的答案: 本题解析: 暂无解析 7.订单表tb_order包含用户信息uid和产品信息pid等属性,以下语句能够返回至少被 订购过三次的pid是______。 A.SELECTpidFROMtb_orderWHEREcount(pid)>3; B.SELECTpidFROMtb_orderWHEREmax(pid)>=3; C.SELECTpidFROMtb_orderGROUPBYpidHAVINGCOUNT(pid)>3; D.SELECTpidFROMtb_orderGROUPBYpidHAVINGCOUNT(pid)>=3; 正确答案:D 您的答案: 本题解析: 暂无解析 8.设有学生表student(sno,sname,sage,smajor),要从student表中检索sname字段值 第2个字是"红"的所有学生信息。以下能够按照上述条件进行检索的WHERE表达式是____ __。 A.snameLIKE"_红%" B.snameLIKE"_红_" C.snameLIKE"%红%" D.snameLIKE"%红_" 正确答案:A 您的答案: 本题解析: 暂无解析 9.设有成绩表,包含学号、分数等字段。现有查询要求:查询有3门以上课程的成绩在9 0分以上的学生学号及90分以上课程数。以下SQL语句中正确的是______。 A.SELECT学号,COUNT(*)FROM成绩WH
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值