小白之旅19-2
Posted demonycw
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了小白之旅19-2相关的知识,希望对你有一定的参考价值。
查询
一. 查询语句的标准结构
select
? 字段列表
from
? 表名
where
? 条件
group by
? 分组字段
having
? 分组后的条件
order by
? 排序方式
limit
? 分页方式
二. 基本查询
1、查询所有数据
select * from 表名;
2、查询所有记录的指定字段
select 字段1,字段2,... from 表名;
3、去重查询
select distinct 去重字段 from 表名;
4、起别名
as,as可以省略
5、计算字段值
查询的字段结果可是使用四则运算
null值不参与字段的计算
三. 条件查询
条件查询的格式:
select 字段列表 from 表名 where 条件;
3.1 运算符
- 比较运算符:>、 <、 >=、 <=、 !=、 =、 <>
- 在指定列表:in,例如:select * from emp where eage in (23,33,43); 查找表中eage字段值包含在列表中的记录
- 在指定范围内:between ... and ...,例如:select * from emp where eage between 23 and 33;查找表中eage字段值在 [23,33] 之间的记录
- 模糊查询:like,例如:
- select * from emp where ename like "张__"; 查找表中所有姓张名字是三个字的记录
- select * from emp where ename like "李_"; 查找表中所有姓李名字是两个字的记录
- select * from emp where ename like "%狗%"; 查找表中所有名字里带狗的记录
- 注:"_",表示任意字符出现1次;"%",表示任意字符出现任意次
- 逻辑运算符: and、&& 、or、||、not、!
- 判断是否(不)为空:is not null、is null
3.2 排序
格式:
order by 字段1 排序方式1,字段2 排序方式2,... ;
排序方式:
? 升序:asc(默认)
? 降序:desc
注:多个条件排序时,只有前一个字段值相同时,才会判断后面的条件
3.3 聚合函数
概念:将一列数据作为一个整体,进行纵向的计算
- sum:求和
- avg():求平均值
- max():求最大值
- min():求最小值
- count():求个数
注:
1、null值不参与聚合函数
2、count()中一般使用非空字段,例如:主键 或者 *
3.4 分组查询
格式:
group by 分组字段;
注:分组一般都和聚合函数一起使用
where 和 having的区别是什么?
1、where在分组之前筛选,如果不满足,则不分组;having在分组后筛选,如果不满足,则查不到。
2、where之后不可以跟聚合函数,having可以进行聚合函数的判断。
3.5 分页查询
格式:
limit 开始索引,每页查询的记录数
公式:开始索引 = ( 当前页码 - 1) * 每页显示的记录数
limit关键字是mysql的方言
以上是关于小白之旅19-2的主要内容,如果未能解决你的问题,请参考以下文章