MySQL核心--数据查询操作

数据表中数据常用的查询操作

查询操作,在增删改查操作中,是属于操作频率最高,同时操作方式最多样的,包含单表的操作以及多表关联的操作。

1、 单表查询

基于单个数据表的数据查询操作,我们称为单表查询,单表查询是高级查询的基础,也是项目中在进行****数据测试时****使用最多的sql语句。

1.1、 全表查询

基本操作语法:(在工作中不推荐)

格式: SELECT * FROM 表名;

在这里插入图片描述

1.2、 指定字段查询

基本操作语法:

在这里插入图片描述

1.3、 剔重字段查询

基本操作语法:
在这里插入图片描述

1.4、 单条件比较查询

基本操作语法:
在这里插入图片描述

1.5、 多条件逻辑与查询

基本操作语法:

在这里插入图片描述

1.6、 多条件逻辑或查询

基本操作 语法:

在这里插入图片描述

1.7、 BETWEEN…AND范围查询

基本操作语法:

在这里插入图片描述

1.8、 IN 范围查询

基本操作语法:

在这里插入图片描述

1.9、 IS NULL 空值查询

基本操作语法:

在这里插入图片描述

1.10、 模糊查询

%: 任意位的任意字符 类似于正则 .*

_: 一位任意字符 .

语法: SELECT * FROM 表名 WHERE 字段 like ‘’;

基本操作语法:

在这里插入图片描述

1.11、 排序查询

格式: SELECT * FROM 表名 ORDER BY 字段名 [asc|desc];

asc: 升序排序 默认值

desc: 降序排序

– 多字段排序

SELECT * FROM 表名 ORDER BY 字段名 [asc|desc],字段名 [asc|desc];

基本操作语法:

在这里插入图片描述

1.12、 分页查询

格式: SELECT * FROM 表名 LIMIT 跳过前几条数据,获取数据的条数;

第一个参数可以省略不写,省略不写从头开始取数据

每页3条数据,

第一页: 0,3

第二页:3,3

第三页:6,3

第四页:9,3

(n-1)* 每页数据的条数

基本操作语法:

在这里插入图片描述

查询一下 奖金最高的三个人

1.13、 分组查询

基本操作语法:

在这里插入图片描述

2、 聚合查询

聚合查询,是通过MySQL内建的聚合函数,完成数据库中查询数据的聚合运算结果,如求和、求平均值等

2.1、 count()

按照指定的条件,查询数据表中的所有记录数

在这里插入图片描述

按照指定列查询记录数

在这里插入图片描述

分组查询不同小组的记录数

在这里插入图片描述

2.2、 sum()

求和函数,查询指定列的所有数据的和,查询所有员工的奖金总和
在这里插入图片描述

2.3、 avg()

求平均数函数,查询指定列的所有数据的平均值,查询所有员工的平均奖金
在这里插入图片描述

2.4、 max()

查询指定列中的最大值数据,查询奖金最高的员工

在这里插入图片描述

2.5、 min()

查询指定列中的最小值数据,查询奖金最少的员工

在这里插入图片描述

补充: sql 语句执行流程

SELECT   *  FROM 表名  WHERE  条件   分组     排序    分页;
         6     1         2            3       4      5

3、IF语句查询

基本语法:IF ( expr1 , expr2 , expr3 )

expr1 的值为 TRUE,则返回值为 expr2
expr1 的值为FALSE,则返回值为 expr3

案例操作:查询员工表中,奖金大于10000的人为有钱人,否则为打工人

mysql> select empname,if( comm>10000,"有钱人","打工人") as a from employee;

+-----------+-------------------+

| empname  |  a     |
+-----------+-----------+
| 宋江    | 有钱人   |
| 卢俊义   | 有钱人   |
| 吴用    | 有钱人   |
| 林冲    | 打工人   |
| 秦明    | 打工人   |
| 呼延灼   | 打工人  |
| 董平    | 打工人   |

4 CASE…WHEN语句查询

4.1 简单函数

CASE [col_name] WHEN [value1] THEN [result1]…ELSE [default] END;

示例:查询员工表中,上级编号0的是老大,为1的是二把手,为1201的是三把手,其他为小兵。

select empname,case mgr when 0 then “老大” when 1 then ‘二把手’ when 1201 then “三把手” else ‘小兵’ end as 级别from employee;
在这里插入图片描述

4.2 搜索函数

CASE WHEN [expr] THEN [result1]…ELSE [default] END;

示例:查询员工表中,奖金大于20000的人为地主,10000-20000为富农,1000-10000为中农,其余为贫农.

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

扁舟钓雪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值