MySQL学习笔记(三)在命令模式下———表的基本操作(二)

这篇博客详细介绍了在MySQL命令模式下进行表的查询操作,包括基础查询、条件查询、高级查询等方面,涉及到SELECT语句的使用,如WHERE、AND、OR、BETWEEN、LIKE、DISTINCT等关键字,以及聚合函数COUNT、SUM、AVG、MAX、MIN的应用。还提到了HAVING子句与WHERE的区别,以及LIMIT用于分页查询的功能。
摘要由CSDN通过智能技术生成

表的查询操作

基础查询

  1. 创建数据表和表结构的说明

CRETAE TABLE 数据表名称 (
字段名1 数据类型 COMMENT ‘类型说明’

字段n 数据类型 COMMENT ‘类型说明’
);

在这里插入图片描述
2. 查询所有字段

SELECT * FROM 数据表名称;

在这里插入图片描述

  1. 查询自定义字段

SELECT 指定字段1, … 指定字段n FROM 数据表名称 ;

在这里插入图片描述

条件查询

  1. 带关系运算符的查询

SELECT 指定字段1 ,指定字段2 FROM 数据表名称 WHERE 条件表达式;

以上语法中,指定字段1和指定字段2表示要查询的字段名称,条件表达式表示筛选数据的条件。

常见的关系运算符:

关系运算符含义
=等于
<>或!=不等于(在数据库中常用 <>表示不等于
<小于
<=小于等于
>大于
>=大于等于

在这里插入图片描述
2. 带AND 关键字的查询

SELECT 指定字段1 ,指定字段2 FROM 数据表名称 WHERE 条件表达式 AND 条件表达式2;
在这里插入图片描述
3. 带 OR 关键字的查询

SELECT 指定字段1 ,指定字段2 FROM 数据表名称 WHERE 条件表达式 OR 条件表达式2;
在这里插入图片描述
4. 带 IN 或 NOT IN 关键字的查询

SELECT 指定字段1 ,指定字段2 FROM 数据表名称 WHERE 字段名[NOT] IN (元素1,元素2…)
在这里插入图片描述
5. 带IS NULL 或 IS NOT NULL 关键字的查询

在数据表中可能存在空值,空值与0不同,也不同于空字符串。在MySQL中使用IS NULL 或 IS NOT NULL关键字查看是否为空值,具体语法如下:

SELECT 字段名1,字段名2… FROM 数据表名称 WHERE IS [NOT] NULL ;

在这里插入图片描述

  1. 带BETWEEN AND 关键字的查询

SELECT 字段名1,字段名2… FROM 数据表名称 WHERE 字段名 [NOT] BETWEEN 筛选范围1 AND 筛选范围2;

在这里插入图片描述

  1. 带LIKE关键字的查询
    前面记录了精确查询,而有时需要模糊查询;
    例如查询某个学生的姓名;

SELECT 字段1 ,字段2… FROM 数据表名称 WHERE 字段名[NOT] LIKE ‘匹配字符串’

‘匹配字符串’:用来指定要匹配的字符串,可以时一个普通的字符串,也可以是包含百分号(%)和下划线(_)的通配符字符串,其中:%表示0~n个字符,下划线表示一个字符。
在这里插入图片描述
7. 带DISTINCT关键字的查询

SELECT DISTINCT 字段名 FROM 数据表名称;

在这里插入图片描述

高级查询

一. 排序查询

SELECT 字段名1 ,字段名2 FROM 数据表名称 ORDER BY 字段名1[ASC|DESC] ,字段名2[ASC|DESC]…;

ASC:表示升序(默认为升序)DESC:表示降序
在这里插入图片描述

二.聚合函数

函数名称作用
COUNT()返回查询的行数
AVG()返回查询的平均值
SUM()返回查询的和
MAX()返回查询的最大值
MIN()返回查询的最小值

1.COUNT()函数:

SELECT COUNT ( | 1 | 列名)* FROM 数据表名称 (也可加条件查询语句[WHERE…]

在这里插入图片描述下面来解释一下图片中的暗藏问题!!
数值类型 相加时,结果为0。在MySQL中使用 IFNULL 函数处理这些问题。如上图最后一条查询语句所示!!!

2.求和SUM()和 求平均值AVG()函数的基本操作:

若指定列的类型不是数据类型,那么计算的结果为0!
语法格式如下:

SUM()函数:SELECT SUM(字段名) FROM 数据表名称;

在这里插入图片描述

ACG()函数:SELECT AVG(字段名) FROM 数据表名称;
在这里插入图片描述

3.最大值MAX()函数和MIN()函数的基本使用:

MAX()函数:SELECT MAX(字段名) FROM 数据表名称;

在这里插入图片描述

MIN()函数:SELECT MIN(函数) FROM 数据表名称;

在这里插入图片描述

聚合函数总结:

通过上述语句的使用,总结出一条规律:

SELECT 聚合函数(),聚合函数()… FROM 数据表名称;

值得注意的是: 数据类型与空相加时,需使用IFNULL(列名,0) 将空转换为数值0!!

三. 分组查询
在查询数据时,有时需要按照一定的类别进行统计。例如查询某部门的人数,查询每个部门的薪资总和等。在MySQL中使用 GROUP BY 语句进行分组查询。
具体语法如下:

SELECT 字段名1,字段名2…FROM 数据表名称 GROUP BY 字段1 ,字段2…
在这里插入图片描述

注意: 在分组查询中,可以使用条件筛选语句——WHERE ,但不能将其放在GROUP BY语句的后面!!!

四. HAVING查询

对于一些更复杂的分组查询,在查询完成后还需进行对数据过滤。MySQL提供HAVIN子句,用于在分组后对数据进行过滤。

语法格式如下:

SELECT 字段名1,字段名2… FROM 数据表名称 HAVING [条件表达式];
在这里插入图片描述

HAVING子句和WHERE 的区别:

在使用分组查询时,需要进一步的对数据进行筛选,通常会想到 “WHERE” 而"WHERE"语句无法使用聚合函数且只在GROUP BY 前使用。
"HAVING"子句可在GROUP BY 后使用聚合函数。

五. LIMIT分页

在查询数据时一般会返回几条,几十条甚至更多的数据,但用户可能只需其中的某几条,而且这种查询明显会影响性能。 MySQL提供了LIMIT关键字用于限制查询结果的数量。

具体语法如下:
SELECT 字段名1,字段名2 FROM 数据表名称 LIMIT [m,]n;

LIMIT后可跟两个参数,m为可选参数,默认为0,n为必选参数,代表从m+1条记录开始,取n条记录
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值