赞
踩
条件查询语法:
select
查询列表
from
表名
where
筛选条件;
分类:
一、按条件表达式筛选
条件运算符:> < = != <> >= <=
二、按逻辑表达式筛选
逻辑运算符:
作用:用于连接条件表达式
&& || !
and or not
&&和and:两个条件都为true,结果为true,反之为false
||和or:一个条件即可
三、模糊查询
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 ;
#二、按逻辑表达式筛选
#案例1:查询工资在10000到20000之间的员工名、工资及奖金
SELECT
last_name ,salary ,commission_pct
FROM
employees
WHERE salary >= 10000
&& salary <= 20000 ;
#案例2:查询部门编号不是在90-110之间,或者工资高于15000的员工信息
SELECT
*
FROM
employees
WHERE (
department_id < 90 || department_id > 110
) || salary > 20000 ;
#三、模糊查询
/*
like
between and
in
is null|is not null
*/
#1.like
#特点:①一般都和通配符一起使用。
#通配符:
#%表示任意多个字符,包含0个字符
#_任意单个字符
#案例1:查询员工名中包含字符a的员工信息
SELECT *
FROM employees
WHERE last_name LIKE '%a%'; #百分号待表通配符,因为字符a前后都可能会有字符
#案例2:查询员工名中第三个字符为n,第五个字符为l的员工名和工资
SELECT
last_name,
salary
FROM
employees
WHERE last_name LIKE '__n_l%' ;
#案例3:查询员工名中第二个字符为_的员工名
SELECT
last_name
FROM
employees
WHERE
last_name LIKE '_\_%';
#或者 last_name like '_$_%' escape '$';
#这里的escape关键字是将$设置为转义字符,其他字符亦可。
#2、between and (提高语言简洁度、包含连接值、不可颠倒顺序)
#案例1:查询员工编号在100到120之间的员工信息
#之前的and、&&
#between and
SELECT
*
FROM
employees
WHERE employee_id BETWEEN 100
AND 120 ;
#3、in(判断某字段的值是否满足in列表中的某一项,可以提高简洁度,列表中的值类型必须一致或兼容)
#案例:查询员工的工种编号是 IT_PROG、AD_VP、AD_PRES中的一个员工名和工种编号
SELECT
last_name,
job_id
FROM
employees
WHERE job_id = 'IT_PROT'
OR job_id = 'AD_VP'
OR job_id = 'AD_PRES' ;
#以上过于麻烦,可以用in来简化
SELECT
last_name,
job_id
FROM
employees
WHERE job_id IN ('IT_PROT','AD_VP','AD_PRES');
#4、is null或is not null
#=或<>不能判断是否为null
#案例1:查询没有奖金的员工名和奖金率
SELECT last_name,
commission_pct
FROM employees
WHERE commission_pct IS NULL;
#补充:安全等于:<=>
#可以判断null也可以判断数值,但是可读性较差
#is null 与 <=>区别
#is null:仅仅可以判断null值,可读性较高
#<=>:可以判断null与数值,但可读性较差
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。