SQL的相关知识——DQL

1.DQL:查询表中的记录

select * from 表名

语法:

                select

                        字段列表

                from

                        表名列表

                where

                        条件列表

                group by

                        分组字段

                having

                        组分之后的条件

                order by

                        排序

                limit

                        分页限定

2.基础查询

        1.多个字段的查询

                select 字段名1,字段名2...from 表名;

                *注意:

                        如果查询所有字段,则可以使用*来代替字段列表

        2.去除重复

                        distinct

        3.计算列

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

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

                        表达式1:哪个字段需要判断是否为null,如果该字段为null,就用表达式2替换。

        4.起别名

                        as:as也可以省略,用空格。

3.条件查询

1.where子句后跟条件

2.运算符

        >,<,<=,>=,=,<>(不等于)

        BETWEEN...AND...

        IN(集合)

        LIKE:模糊查询

                1._:单个任意字符

                2.%:多个任意字符

        IS NULL

        AND 或者 &&

        OR 或者 ||

        not 或 |

4.顺序查询

语法:order by子句

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

排序方式:

                ASC:升序,默认的。

                DESC:降序。

注意:

        如果有多个排序条件,则当前边的条件值一样的,才会判断第二个条件

5.聚合函数

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

        1.count:计算个数

                1.一般选择非空的列:主键

                2.count(*)

        2.max:计算最大值

        3.min:计算最小值

        4.sum:计算和

        5.avg:计算平均值

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

                解决方案:

                        1.选择不包含非空的列进行计算

                        2.IFNULL函数

6.分组查询

1.语法:group by 分组字段;

2.注意:

        1.分组之后查询的字段:分组字段,聚合函数

        2.where 和having的区别:

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

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

7.分页查询

1.语法:limit 开始的索引,每页查询的条数;

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

示例代码:

每页显示三条数据:

        select * from students limit 0,3;--第一页

        select * from students limit 3,3;--第二页

        select * from students limit 6,3;--第三页

3.limit是一个MySQL特有的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值