DQL查询表中的记录

DQL
查询 表里面 的 全部 记录

单表查询
select * from stu;

select
字段列表
from
表名列表
where
条件列表
group by
分组字段
having
分组之后的条件
order by
排序
limit
分页限定

一。基础查询
(1)查询多个字段
select 字段1,字段2,…from 表名

(2)去除重复
select distinct(关键字) //只有 结果集 完全一样 才可以 去重
字段列表
from
表名字段

(3)计算列
一般 可以使用 四则运算计算一些列的值
select
name,math ,english , —列名
math + ifnull(表达式1,表达式2) 计算列 //表达式1:哪个 字符端 需要判断是否为null 表达式2:如果表达式 1为 null用表达式2 替换数据
from 表名

(4)起别名
select
name,math ,english , —列名
math + ifnull(表达式1,表达式2) ---- 计算列 ------
as 别名
from 表名

二。条件查询
where 子句后跟条件

运算符:
BETWEEN …AND

IN(集合)

LIKE

IS NULL

and 或 &&

or或||

not或!

null 不能使用 = 或者 != 判断 只能使用 IS null 或者 ISNOT null判断

模糊查询
LIKE
占位符
_单个任意字符
%多个任意字符
例: select * from student where name like “马%”;

三。排序查询
语法:order by 子句
order by 排序 字段1 排序方式1,排序字段2 排序方式2; //第二牌排序方式 只会 在第一排序 条件值相同时 才会 判断第二条件
排序方式 : 升序ASC:升序 (默认 的) DESC:降序

四:聚合函数:将一列数据 作为 一个整体进行 纵向计算

count :计算个数
例:SELECT COUNT(stuName) FROM studentSys;
聚合函数的计算 会排除null值;
一般选择非空列 :主键

max :计算最大值
例:SELECT MAX(stuAge) FROM studentSys;

min:计算最小值
例:SELECT MIN(stuAge) FROM studentSys;

sum:求和
例:SELECT SUM(stuAge) FROM studentSys;

avg:计算平均值
例:SELECT AVG(stuAge) FROM studentSys;

五。分组查询
语法:group by 分组字段;

例: SELECT 想要查询的字段 FROM studentSys GROUP BY stuHome;
添加条件
where 添加条件
例: SELECT 想要查询的字段 FROM studentSys WHERE 条件 GROUP BY stuHome;

限定结果集条件
having
例:SELECT 想要查询的字段 FROM studentSys WHERE 条件 GROUP BY stuHome HAVING 结果集条件;

!!!!!!!!!!!!!!!where 和 having的区别
(1)作用 位置 不一样 : where 在 分组之前 限定 ,如果 不满足条件则不参与分组
、 having 在分组之后限定 如果不满足条件则不会被查询出来
(2)where之后不可以跟聚合函数,having可以进行对聚合函数 的判断

六。分页查询

语法: limit 开始的索引,每页查询的条数
例:SELECT * FROM studentSys LIMIT 0, 3;

公式 :开始的索引 = (当前的页码)*每页显示的条数

分页操作中limit 是 mysql"“方言”"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值