数据库----条件查询学习笔记代码

#进阶2:条件查询
语法:
select
查询列表 3
from
表名 第一步1
where
筛选条件; 2

分类:
一,按条件表达式筛选
条件运算符:> < = != <> >= <=
二,按逻辑表达式筛选
逻辑运算符:&& || !and or not
三,模糊查询
like
between and
in
is null

#一,按条件表达式筛选
#条件运算符:> < = != <> >= <=
#1,查询工资12000的员工
SELECT 
  * 
FROM
  employees 
WHERE salary > 12000 ;

#2,查询部门编号不等于90的员工名和部门编号
SELECT 
  last_name,
  department_id 
FROM
  employees 
WHERE department_id!=90;
#WHERE department_id<>90;
#二,按逻辑表达式筛选
#逻辑运算符:&& || !and  or not
#查询工资10000,20000之间的员工名,工资,奖金
SELECT 
  `first_name` , `salary` , `commission_pct` 
FROM
  employees 
WHERE salary > 10000 
  AND salary < 20000 ;
#查询部门编号不是再90到110之间,或者工资高于15000的员工信息
SELECT 
  * 
FROM
  employees 
WHERE `department_id` < 90 
  OR `department_id` > 110 
  OR `salary` > 15000 ;
  
SELECT 
  * 
FROM
  employees 
WHERE NOT(`department_id` >= 90 
  AND `department_id` <= 110 )
  OR `salary` > 15000 ;
#三,模糊查询
#1 like 
#查询员工名中包含字符a的员工信息
SELECT 
  * 
FROM
  employees 
WHERE last_name LIKE '%a%' ;#%代表任意一个字符,说明a前面,后面都有字符
#查询员工名中第三个字符为e,第五个字符为a的员工名和工资
SELECT 
  last_name,
  salary 
FROM
  employees 
WHERE last_name LIKE '%_a__n%';

#2 between and 
#查询员工编号在100到120之间的员工信息
SELECT 
  * 
FROM
  employees 
WHERE employee_id>=100 AND employee_id<=120;


SELECT 
  * 
FROM
  employees 
WHERE employee_id BETWEEN 100 AND 120;#包含临界值,不能颠倒临界值

#3 in 
#用于判断莫字段的值是否属于in表中的一项
#查询员工的工种编号是IT_PROG,AD_VD,AD_PRES中的一个员工名和工种编号
SELECT 
  last_name,
  job_id 
FROM
  employees 
WHERE job_id='IT_PROG' OR job_id='AD_VD' OR job_id='AD_PRES';

#------------------------
SELECT 
  last_name,
  job_id 
FROM
  employees 
WHERE job_id IN ('IT_PROG','AD_VD' ,'AD_PRES');

#4 is null
#=或者<>不能用于判断null
#查询没有奖金的员工名和奖金率
SELECT 
  last_name,
  commission_pct 
FROM
  employees 
WHERE commission_pct =NULL;#不能查询
#----------------------------------
SELECT 
  last_name,
  commission_pct 
FROM
  employees 
WHERE commission_pct IS NULL;
#查询有奖金的
SELECT 
  last_name,
  commission_pct 
FROM
  employees 
WHERE commission_pct IS NOT NULL;

#安全等于<=>
#查询没有奖金的员工名和奖金率
SELECT 
  last_name,
  commission_pct 
FROM
  employees 
WHERE commission_pct <=>NULL;

#查询工资为12000的员工信息
SELECT 
  last_name,
  salary 
FROM
  employees 
WHERE salary <=>12000;

#is null pk <=>
#is null :仅仅可以判断null值,可读性较高建议使用
#<=>:既可以判断null值,又可以判断普通的数值,可读性较低
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值