MySQL数据库--学习笔记03DQL

本文详细介绍了DQL(Data Query Language)的基本概念和执行顺序,包括选择字段、设置别名、去除重复记录、条件查询、聚合查询、分组查询、排序查询和分页查询等操作。通过实例解析了各种查询语句的语法和功能,并对比了WHERE与HAVING子句的区别。此外,还探讨了在实际应用中如何进行有效的数据筛选、聚合和分组,以提高查询效率。
摘要由CSDN通过智能技术生成

DQL【Data Query Language】数据查询语言,用来查询数据库中表的记录。

DQL-顺序
编写顺序:
select
     字段列表
from
     表名列表
where
     条件列表
group by
     分组字段列表
having
     分组后条件列表
order by
     排序字段列表
limt
     分页参数

执行顺序:
from
     表名列表
where
     条件列表
group by
     分组字段列表
having
     分组后条件列表
select
     字段列表
order by
     排序字段列表
limt
     分页参数


一.基本查询

1.查询多个字段
select 字段1,字段2,字段3,... from 表名;
select * from 表名;

2.设置别名
select 字段1[as 别名1],字段2[as 别名2],... from 表名;

3.去除重复记录
select distinct 字段列表 from 表名;

二.条件查询(WHERE)

1.语法
select 字段列表 from 表名 where 条件列表; 

常用的比较运算符如下:
比较运算符功能
>大于
>=大于等于
<小于
<=小于等于
=等于
<>或!=不等于
BETWEEN ...AND...在某个范围之内(含最小、最大值)
IN(...)在in之后的列表中的值,多选一
LIKE占位符模糊匹配(_匹配单个字符,%匹配任意个字符)
IS NULL是NULL
常用的比逻辑运算符如下:
逻辑运算符功能
AND或&&并且(多个条件同时成立)
OR或||或者(多个条件任意一个成立)
NOT或!非,不是

三.聚合查询(count、max、min、avg、sum)

1.介绍
将一列数据作为一个整体,进行纵向计算


2. 语法
select 聚合函数(字段列表) from 表名;

函数功能
count统计数量
max最大值
min最小值
avg平均值
sum求和

【注意:NULL值是不参与所有聚合函数运算的。】

四.分组查询(GROUP BY)

1.语法
selsect 字段列表 from 表名 [where 条件] group by 分组字段名 [having 分组后过滤条件]

2.where与having区别

  • 执行时机不同:where是分组之前进行过滤,不满足where条件,不参与分组;而having是分组之后对结果进行过滤。
  • 判断条件不同:where不能对聚合函数进行判断,而having可以。

3.注意事项:

  • 分组之后,查询的字段一般为聚合函数和分组字段,查询其他字段无任何意义。
  • 执行顺序:where >聚合函数> having。
  • 支持多字段分组,具体语法为:group by columnA,columnB

五.排序查询(ORDER BY)
1.语法
select 字段列表 from 表名 order by 字段1 排序方式1,字段2 排序方式2;
 
2.排序方式
ASC :升序(默认值)
DESC:降序

注意事项:

  • 如果是升序,可以不指定排序方式ASC;
  • 如果是多字段排序,当第一个字段值相同时,才会根据第二个字段进行排序;

六.分页查询(LIMT)

select 字段列表 from 表名 limt 起始索引,查询记录数;

注意事项:

  • 起始索引从0开始,起始索引=(查询页码- 1)*每页显示记录数。
  • 分页查询是数据库的方言,不同的数据库有不同的实现,MySQL中是LIMIT。
  • 如果查询的是第一页数据,起始索引可以省略,直接简写为limit 10。 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值