DQL语言(关于查询的所有操作,必须先进要操作的库)
-
concat函数实现连接
-
条件查询
1. 语法:
select 查询列表 from 表名 where 筛选条件
2.分类
* 按条件表达式筛选
条件运算符:>(大于) ,<(小于) ,=(等于) ,!=(不等于),<>(不等于),>=(大于等于),<=(小于等于)
*按逻辑表达式筛选
逻辑运算符: && (与) ||(或) !(非) MySQL推荐使用 and or ont
&&和and:两个条件都为true,结果为true,反之为false
||和or:只要有一个条件为true,结果为true,反之为false
!和not:如果连接的条件本身为false,结果为true,反之为false
* 模糊查询
llike :
特点:一般和通配符搭配使用
通配符:
% 任意多个字符,包含0个字符
_ 任意单个字符
列如:模糊查询名字
like’张_‘以张开头的两个字的名字
like’小’三个字中间必须为小
like’%小%'包含中间小的
like’张%'以张开头的所有名字between and :在…之间
使用between and 可以提高语句的简洁度
包含临界值
两个临界值不要调换顺序in :判断某字段的值是否属于in列表中的某一项
特点:使用in提高语句简洁度
in列表的值类型必须一致或兼容
in列表的值不支持通配符is null:
is null: 判断值为null的值
is not null: 判断值不为null的值
3.案例1 (按条件表达式筛选)
使用的表:
查询工资大于12000的员工信息
查询部门编号不等于1006号的员工名和部门编号(一般的后面的就是要查询的字段)
方式1:
方式2:
案例4(按逻辑运算表达式筛选)
查询工资在10000到20000之间的员工名,工资
案例5(模糊查询)
like
查询员工名中包含张员工信息
between and
查询员工编号在1006到1010之间的员工信息
in
查询员工编号是1006,1008,1010
4.补充
– 安全等于: <=>
判断是否等于,等于返回true,反之false
– is null 与<=>
is null:仅仅可以判断null值(可读性较高)
<=>:既可以判断null,又可以判断普通的数值 (可读性较低)
- 排序查询
1.语法:
select 查询列表 from 表 【where 筛选条件】order by 排序列表 asc(升序)|desc(降序)
2.特点:
asc代表的升序,desc代表的是降序,如果不写,默认是升序。
order by 子句中可以支持单个字段,多个字段,表达式,函数,别名
order by 子句一般放在查询语句的最后面,除了limit子句除外
3 .案例:
按部门编号升序排序
按部门编号降序排序