mysql基础三:查询关键字及练习题

别名、is null 和 is not null、去重、and和or、比较运算符 > <  >=  <=  =  != 和 <>、模糊查询 like、查询在两者之间  between x and y  包含xy、 in、排序 、分页、数值计算 + - * / %

1.别名 as

2.is null 和 is not null

3.distinct

4.and和or

5. > <  >=  <=  =  != 和 <>

6.like:%表示多个未知字符。-表示一个未知字符

7. between x and y

8.in(a,b,c)

9.默认升序、desc降序

10.limit(a,b)

11. + - * / %

 

 

练习:

表emp:empno,ename,job,mgr,hiredate,sal,comm,deptno
1. 案例:查询没有上级领导的员工的编号,姓名,工资
select e.empno,e.ename,e.sal from emp e where e.mgr is null;
2. 案例:查询emp表中没有奖金的员工的姓名,职位,工资,以及奖金
select e.ename,e.job,sal,comm from emp e where e.comm is null;
3. 案例:查询emp表中含有奖金的员工的编号,姓名,职位,以及奖金
select  e.empno,e.ename,e.job,e.comm from emp e where e.comm is not null and comm !=0;
4. 案例:查询含有上级领导的员工的姓名,工资以及上级领导的编号
select  e.ename,e.sal,e.mgr from emp e where e.mgr is not null and e.mgr!=0;
5. 案例:查询emp表中名字以‘S’开头的所有员工的姓名
select e.ename from emp e where e.ename like 'S%';
6. 案例:查询emp表中名字的最后一个字符是'S'的员工的姓名
select e.ename from emp e where e.ename like '%S';
7. 案例:查询倒数的第2个字符是‘E’的员工的姓名
select e.ename from emp e where e.ename like '%E_';
8. 案例:查询emp表中员工的倒数第3个字符是‘N’的员工姓名
select e.ename from emp e where e.ename like '%N__';
9. 案例:查询emp表中员工的名字中包含‘A’的员工的姓名
select e.ename from emp e where e.ename like '%A%';
10. 案例:查询emp表中名字不是以'K'开头的员工的所有信息
select e.ename from emp e where e.ename  not like 'K%';
11. 案例:查询emp表中名字中不包含‘A’的所有员工的信息
select e.ename from emp e where e.ename  not like '%A%';
12. 案例:做文员的员工人数(job 中 含有 CLERK 的)
select count(*) from emp e where  e.job like '%CLERK%';
13. 案例:销售人员 job: SALESMAN 的最高薪水
select e.ename,max(sal) from emp e where e.job like '%SALESMAN%';
14. 案例:最早和最晚入职时间
select max(hiredate),min(hiredate) from emp e;

表t_item:
id,category_id,item_type,title,sell_point,price,num,barcode,image,
status,priority,created_time,modified_time,created_user,modified_user
15. 案例:查询类别 163的商品总库存量
select count(*) from t_item t where category_id=163;
16. 案例:查询 类别 163 的商品
select * from t_item where category_id=163;
17. 案例:查询商品价格不大于100的商品名称列表
select  t.title from t_item t where t.price<=100;
18. 案例:查询品牌是联想,且价格在40000以上的商品名称和价格
select t.title,t.price from t_item t where t.title like '%联想%' and t.price >40000;
19. 案例:查询品牌是三木,或价格在50以下的商品名称和价格
select t.title,t.price from t_item t where t.title like '%三木%' and t.price<50;
20. 案例:查询品牌是三木、广博、齐心的商品名称和价格
select t.title,t.price from t_item t where t.title like '%三木%' or t.title like '%广博%' or t.title like '%齐心%' ;
21. 案例:查询品牌不是联想、戴尔的商品名称和价格
select t.title,t.price from t_item t where t.title not like '%联想%' and  t.title not like '%戴尔%';
22. 案例:查找品牌是联想且价格大于10000的名称
select t.title from t_item t where t.price>10000 and t.title not like '%联想%';
23. 案例:查询联想或戴尔的电脑名称列表
select t.title from t_item t where t.category_id=163 and t.title  like '%联想%' or t.title  like '%戴尔%';
29. 案例:查询卖点含有'赠'产品名称
select t.title,t.sell_point from t_item t where sell_point like '%赠%';tr

表emp:empno,ename,job,mgr,hiredate,sal,comm,deptno
30. 案例:查询emp表中员工的编号,姓名,职位,工资,并且工资在1000~2000之间。
select e.empno,e.ename,e.job,e.sal from emp e where e.sal between 1000 and 2000;
select e.empno,e.ename,e.job,e.sal from emp e where e.sal >=1000 and  e.sal <=2000;
31. 案例:查询emp表中员工在10号部门,并且含有上级领导的员工的姓名,职位,上级领导编号以及所属部门的编号
select e.ename,e.job,e.mgr,e.empno from emp e where e.deptno=10 and e.mgr is not null and e.mgr !=0;
32. 案例:查询emp表中名字中包含'E',并且职位不是MANAGER的员工的编号,姓名,职位,以及工资。    
select e.empno,e.ename,e.job,e.sal from emp e where e.ename like '%E%' and e.job not like '%MANAGER%';
33. 案例:查询emp表中10号部门或者20号部门中员工的编号,姓名,所属部门的编号
select e.empno,e.ename,e.deptno from emp e where e.deptno in(10,20);
34. 案例:查询emp表中没有奖金或者名字的倒数第2个字母不是T的员工的编号,姓名,职位以及奖金
select e.empno,e.ename,e.comm from emp e  where e.comm is not null and e.comm !=0 or e.ename not like '%T_';
35. 案例:查询工资高于3000或者部门编号是30的员工的姓名,职位,工资,入职时间以及所属部门的编号
select e.ename,e.job,e.sal,e.hiredate,e.deptno from emp e where e.sal>3000 or e.deptno=30;
36. 案例:查询不是30号部门的员工的所有信息
select * from emp e where e.deptno!=30;
37. 案例:查询奖金不为空的员工的所有信息
select * from emp e where e.comm is not null and e.comm !=0;
38. 案例:查询emp表中所有员工的编号,姓名,职位,根据员工的编号进行降序排列
select e.empno,e.ename,e.job from emp e order by e.empno desc;
39. 案例:查询emp表中部门编号是10号或者30号中,所有员工姓名,职务,工资,根据工资进行升序排列
select e.ename,e.job,e.sal from emp e where e.deptno in(10,30) order by e.sal ;
40. 案例:查询emp表中所有的数据,然后根据部门的编号进行升序排列,如果部门编号一致,根据员工的编号进行降序排列
select * from emp e order by e.deptno,e.empno desc;
41. 案例:查询emp表中工资高于1000或者没有上级领导的员工的编号,姓名,工资,所属部门的编号,以及上级领导的编号,
根据部门编号进行降序排列,如果部门编号一致根据工资进行升序排列。
select e.empno,e.ename,e.sal,e.deptno,e.mgr from emp e where e.sal>1000 or e.mgr is null or e.mgr=0 order by e.deptno desc,e.sal;
42. 案例:查询emp表中名字中不包含S的员工的编号,姓名,工资,奖金,根据工资进行升序排列,如果工资一致,根据编号进行降序排列
select e.empno,e.ename,e.sal,e.comm from emp e where e.ename not like '%S%' order by e.sal,e.empno desc;
43. 案例:统计emp表中员工的总数量
select count(*) from emp;
44. 案例:统计emp表中获得奖金的员工的数量
select count(*) from emp e where e.comm is not null and e.comm !=0;
45. 案例:求出emp表中所有的工资累加之和
select sum(e.sal) from emp e;
46. 案例:求出emp表中所有的奖金累加之和
select sum(e.comm) from emp e;
47. 案例:求出emp表中员工的平均工资
select avg(e.sal) from emp e;
48. 案例:求出emp表中员工的平均奖金
select avg(e.comm) from emp e;
49. 案例:求出emp表中员工的最高工资
select max(e.sal) from emp e;
50. 案例:求出emp表中员工编号的最大值
select max(e.empno) from emp e;
51. 案例:查询emp表中员工的最低工资。
select min(e.sal) from emp e;
52. 案例:查询emp表中员工的人数,工资的总和,平均工资,奖金的最大值,奖金的最小值,并且对返回的列起别名。
select count(*)  as '人数',sum(e.sal) as '工资的总和', avg(sal) as '平均工资',max(comm) as '奖金的最大值',min(comm) as '奖金的最小值' from emp e;

 

.

 

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
计算机二级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
一、单项选择题 (只有一个正确答案) 【1】 执行语句"SELECT '2008-01-20'+ INTERVAL 2 DAY; "结果为 A: 2008-01-22 B: 2010-01-20 C: 2008-02-11 D: 2008-03-20 答案: A 【2】 下列哪个是不正确的MySQL的变量命名方式 A: _name B: n$ame C: name D: name! 答案: D 【3】 字符串'hel'lo'输出结果为 A: hel'lo B: 'hello' C: hel\'lo D: 'hel lo' 答案: A 【4】 关系数据库模型是以下哪种方式组织数据结构 A: 树状 B: 文本 C: 二维表 D: 网状 答案: C 【5】 使用下列哪个语句可以删除表中所有数据,但保留表结构 A: truncate table B: rename table C: delete D: drop talbe 答案: A 【6】 E-R图设计属于( )。 A: 概念结构设计 B: 物理结构设计 C: 逻辑结构设计 D: 需求分析设计 答案: B 【7】 执行语句"GREATEST(10,9,128,1)"结果为( )。 A: 9 B: 10 C: 128 D: 1 答案: C 【8】 在一个关系中,若有这样一个属性存在,它的值能唯一地标识关系中的每一个元组,则 称这个属性为 A: 数据项 B: 候选码 C: 主键 D: 主键值 答案: C 【9】 数据库管理系统能实现对数据库中数据的查询、插入、修改和删除等操作。这种功能称 为( )。 A: 数据控制功能 B: 数据操纵功能 C: 数据管理功能 D: 数据定义功能 答案: B 【10】 1999年10月1日在mysql中表示方法错误的是: A: "1999-10-01" B: "1999%10%01" C: "1999\10\01" D: "1999/10/01" 答案: D 【11】 两个表中的行按照给定的条件进行拼接而形成新表的运算为 A: 连接 B: 投影 C: 集合 D: 选择 答案: A 【12】 向表中插入一个行新的纪录的命令为 A: replace into B: insert into C: replace from D: insert from 答案: B 【13】 \n在MySQL中表示 A: " B: 退格符 C: 回车符 D: 换行符 答案: D 【14】 执行语句"SELECT '5' = '5ab';"结果为 A: 0 B: NULL C: False D: 1 答案: A 【15】 显示所有错误的命令 A: show variables B: show warrings C: show errors D: show databases 答案: C 【16】 下列哪项不属于数据库模型的: A: 逻辑 B: 网状 C: 关系 D: 层次 答案: A 【17】 修改数据库的命令为: A: alter database B: Create database C: use database D: drop database 答案: A 【18】 创建表的命令为: A: Create table B: alter table C: drop table D: rename table 答案: A 【19】 删除表的命令为( )。 A: alter table B: drop table C: rename table D: Create table 答案: B 【20】 求查询结果的和的函数为 A: COUNT() B: MIN C: SUM D: MAX 答案: C 【21】 在关系数据库中一个关系是指 A: 一个二维表 B: 表中的一列 C: 表中的一行 D: 表中列的取值围 答案: A 【22】 数据库管理系统的简称为( )。 A: DBMS B: MDBS C: DB D: DBA 答案: A 【23】 数据库表中的基本运算不包括( )。 A: 选择 B: 集合 C: 连接 D: 投影 答案: B 【24】 下列哪个语句指定查询目的 A: from B: select C: grup by D: where 答案: B 【25】 换行是下列哪个转义字符 A: \" B: \n C: \\ D: \' 答案: B 【26】 消除查询结果中重复纪录的关键字为 A: distinct B: having C: ALL D: limit 答案: A 【27】 创建数据库的命令为( )。 A: use database B: Create database C: alter database D: drop database 答案: B 【28】 以下不是

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值