条件查询+排序查询操作(MySQL)
Posted 桃陉
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了条件查询+排序查询操作(MySQL)相关的知识,希望对你有一定的参考价值。
目录
前言
介绍mysql的基础查询操作我们选择使用可视化软件Navicat,对应的数据库使用了某公司员工数据库,该数据库包含员工信息表、部门信息表、公司地址信息表、工作职业信息表。
条 件 查 询 语 法 : s e l e c t 查 询 列 表 f r o m 表 名 w h e r e 筛 选 条 件 ; \\colorRed条件查询语法:select \\ 查询列表 \\ from \\ 表名 \\ where \\ 筛选条件; 条件查询语法:select 查询列表 from 表名 where 筛选条件;
简单条件运算符
即按照条件表达式进行筛选,主要运算符包括:>、<、=、!=、>=、<=、<>(不等于)、<=>(安全等于)
示例一:查询部门编号不等于90号的员工名和部门编号。
示例二:查询工资大于12000的员工信息
逻辑运算符
逻辑运算符主要是用来连接条件表达式,包括and(&&)、or(||)、not(!)
示例一:工资在10000到20000之间的员工信息
示例二:查询员工的工种编号为IT_PROG、AD_VP、AD_PRES 中任意一个的员工名和工种编号
模糊查询
like
作用
:用来查询包含某些关键内容的信息。
示例一:查询员工名字中包含a的员工信息
示例二:查询第二个字符为下划线的员工名
特点
:
∙ \\bullet ∙ 一般和通配符搭配使用。%表示任意多个字符(可以为0) _表示任意单个字符
∙ \\bullet ∙ 查询的内容可以进行转义
between and
作用
:用来查询某个固定范围内的信息,between a and b 等价于 大于等于a并且小于等于b
示例一:查询员工编号在100到120之间员工信息
特点
:
∙ \\bullet ∙ 比起逻辑运算符来说更加简洁、易懂
∙ \\bullet ∙ 包含临界值
in
作用
:判断某字段的值是否属于in列表中的某一项
示例一:查询员工的工种编号IT_PROG、AD_VP、AD_PRES 中的一个员工名和工种编号
特点
:
∙ \\bullet ∙ 提高简洁度
∙ \\bullet ∙ in列表的值类型必须统一或者兼容(可以进行转换)
∙ \\bullet ∙ 不支持通配符
is null / is not null
作用
:筛选某个字段为null或不为null的信息
示例一:查询没有奖金的员工名和奖金率
注意
:条件运算符中的=不能判断是否为null
下面列出is null 与 <=> 的区别:
名称 | 区别1 | 区别2 |
---|---|---|
is null | 只可以判断null值 | 可读性比较好 |
<=> | 即可以判断null值,也可以判断普通数值 | 可读性不好 |
补充:排序查询
排 序 查 询 语 法 : s e l e c t 查 询 列 表 f r o m 表 名 【 w h e r e 筛 选 条 件 】 o r d e r b y 排 序 列 表 【 a s c / d e s c 】 ; \\colorRed排序查询语法:select \\ 查询列表 \\ from \\ 表名 \\ 【where \\ 筛选条件】 \\ order \\ by \\ 排序列表 \\ 【asc/desc】; 排序查询语法:select 查询列表 from 表名 【where 筛选条件】 order by 排序列表 【asc/desc】;
特点
:
∙ \\bullet ∙ asc表示升序,desc表示降序,不写默认升序
∙ \\bullet ∙ order by 子句支持单个字段、多个字段、表达式、函数、别名
∙ \\bullet ∙ order by子句一般放到查询语句的最后面,limit子句除外
示例一:查询部门编号大于等于90的员工信息,按入职时间先后排序
示例二:按姓的长度降序排序
示例三:先按工资升序,后按员工编号降序
以上是关于条件查询+排序查询操作(MySQL)的主要内容,如果未能解决你的问题,请参考以下文章