哈罗,各位小伙伴大家好,又见面了,我还是那个不吃饱不干活的小尘,欢迎来到本期的SQL语言之条件查询测试题讲解部分,让我们一起进入知识的海洋吧~
上节课讲的内容有点多,忘记的小伙伴记得多回顾哦~
第六章、SQL语言学习(条件查询) 超硬核!!!_m0_55746113的博客-CSDN博客https://blog.csdn.net/m0_55746113/article/details/120614516?spm=1001.2014.3001.5502接下来,咱们做几道简单的练习题来巩固一下上节的内容,那么,开始吧。
案例一
查询没有奖金,且工资小于18000的salary ,last_name
小技巧:
1)要查询什么,就在SELECT后面些什么。
2)“的”后面就是 我们要查询的东西。
3)查询的是什么表,就在FROM后面写什么。
4)WHERE后面写的是条件。
代码:
#查询没有奖金,且工资小于18000的salary ,last_name
select
salary,
last_name
from
employees
where
commission_pct is Null and salary <18000
执行结果:
部分解析:
案例二、
查询employees表中,job_id不为“IT”或者工资为12000的员工信息
小技巧:
1)要查的是员工信息,是针对所有员工的,所以要用*来查询所有员工
2)FROM后面是表名,即:employees
3)WHERE后面写限制条件
代码:
SELECT
*
FROM
employees
WHERE
job_id<>'IT' OR salary=12000;
执行结果:
部分解析:
案例三、
查看部门departments表的结构
这个比较简单
代码:
DESC departments;
执行结果:
案例四、
查询部门departments表中涉及到了哪些位置编号。
代码:
SELECT
DISTINCT location_id
FROM
departments;
执行结果:
部分地方说明:
案例五、
试问:
select * from employees ; 和select * from employees where commission_pct like "%%" and last_name like "%%";结果是否一样?并说明原因。
解答:
不一样!
如果判断的字段有NULL的情况,那么结果就不一样。
如果没有NULL值,那就一样。
我们知道,奖金commission_pct有的是NULL,所以不一样。
我们可以看一看执行结果:
第一个:
第二个:
但如果我们把第二个代码改成这样:
将所有字段都写上,用OR连接。
因为总归有一个字段是不为OR的,所以此时两个代码执行结果就是一样的了。
代码:
select
*
from
employees
where commission_pct like '%%'
or last_name like '%%'
or `employee_id` like '%%'
or `first_name` like '%%'
or `email` like '%%'
or `phone_number` like '%%'
or `job_id` like '%%'
or `salary` like '%%'
or `manager_id` like '%%'
or `department_id` like '%%'
or `hiredate` like '%%' ;
执行结果:
好啦,今天的分享就到这儿了,不知道小伙伴们做的怎么样呢?
欢迎评论留言,咱们下次再见~