mysql属于dql语句的是_Mysql:DQL查询语句(补充)

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 20:12   3493   0

1.1基础查询

1.去重结果集:distinct

select distinct * from t_stu;

2.计算列:一般可以使用四则运算计算一些列的值(一般只会进行数值类型的计算)

ifnull(表达式1,表达式2):null参与的计算,计算结果都为null

表达式1:那个字段需要判断是否为null

表达式2:如果该字段为null后的替换值

ifnull(score,0) --score字段中的null会被替换成0

1.2排序查询

语法1:

order by 子句

语法2:

order by 排序字段1 排序方式1,排序字段2 排序方式2,...

排序方式:

ASC:升序(默认的)

DESC:降序

注意:如果多个排序条件,则当前边的条件值一样是,才会判断第二条件。

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

1.count:计算个数

2.max:计算最大值

3.min:计算最小值

4.sum:计算总和

5.avg:计算平均值

注意:聚合函数的计算,排除null值。

解决方案:1.选择非空的列进行计算;2.IFNULL函数

1.4分组查询

1.语法:

group by 分组字段;

注意:

分组之后查询的字段:分组字段或聚合函数

where和having的区别?(面试常问)

where在分组之前进行限定,如果不满足条件,则不参与分组。having在分组之后进行限定,如果不满足结果,则不会被查询出来。

where后不可以跟聚合函数,having可以进行聚合函数的判断。

1.5分页查询

语法:

limit (当前页码-1)*每页显示的条数,每页显示的条数

limit是一个MySQL"方言"

1.6模糊查询

关键字:LIKE

占位符:

--_:单个任意字符 %:多个任意字符

1.7多表查询

分类:

1.子查询

2.内连接查询

隐式内连接:使用where条件消除无用数据

显示内连接:

select 字段列表 from 表名1 [inner] jon 表名2 on 条件;

3.外连接查询

左外链接:查询的是左表所有数据以及其交集部分。

select 字段列表 from 表名1 left [outer] jon 表名2 on 条件;

右外链接:查询的是右表所有数据以及其交集部分。

select 字段列表 from 表名1 right [outer] jon 表名2 on 条件;

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP