Mysql数据库DQL

DQL基础查询
  1. 查询表中指定列的数据:
select 列名1,列名2 ,列名 ... from   表名;
  1. 查询表中的全部数据:

    select  *   from   表名 ;
    
  2. 去除表中的重复数据:

    select   distinct  重复的列名 ...  from    表名;
    
  3. 计算列的数据:

    select   列名1,列名2  ... ifnull(列名 ,0)   from   表名;
    

    #ifnull是进行判断值是否为null,如果为null的话就按照零来计算。

  4. 给查询结果起别名:在列名后面加 as 别名。as可以不加

    CREATE TABLE student(
    id int,--编号
    name varchar(20),--姓名
    age int,--年龄
    se xvarchar(5),--性别
    address varchar(100),--地址
    math int,--数学
    english int--英语
    );
    
DQL条件查询
where 子句后面跟条件,
-- 查询姓名第二个字是化得人
select * from 表名  where  列名  like  '_化%';
  1. 运算符:> , < , <= , >= , = , <>#表示不等于。
  2. between…and #在一个范围之内,包头包尾。
  3. in(集合) #集合表示多个值,使用逗号分隔开。
  4. is null #查询某一列为null的值。
  5. like #模糊查询。 占位符:_ 单个任意字符, % 多个任意字符。
排序查询
  1. 语法格式:

    select * from 表名 order   by  列名   排序的方式;
    
  2. 升序排列:ASC

  3. 降序排列:DESC

  4. 如果有多个排序条件时使用 逗号 隔开,当前一个排序方式相等时,才会启动次要的排序条件。

    SELECT * FROM student ORDER BY math ASC , english DESC ;
    
聚合函数

特点:以一列数据用来计算

  1. 最大值 MAX(列名)

  2. 最小值 MIN(列名)

  3. 总和值 SUM(列名)

  4. 平均值 AVG(列名)

  5. 数据量 COUNT(列名)

    -- 使用不可能出现null值的列进行计算
    select count(列名) from 表名;
    -- 计算表中一共有多少条数据
    select  count(*);
    
分组查询
  1. 当使用分组查询的时候,查询的字段只能是分组字段或者聚合函数。

    select 分组后的列 from 表名  group  by  分组的列;
    
    -- 1. 如果想要在分组之前进行条件的限定 -> 需要使用WHERE
    -- 2. 如果想要在分组之后进行条件的限定 -> 需要使用HAVING
    
  2. having和where的区别是什么?(面试题)

    ①WHERE用于分组之前条件的限定,HAVING分组之后条件的限定.

    ②WHERE后面不可以加聚合函数,HAVING可以添加聚合函数.

    ③HAVING用到了分组查询 -> 查询的字段分组字段/聚合函数,WHERE可以是任意字段.

分页查询
  1. 分页查询语法格式:

    select *  from 表名  limit  参数1,参数2;
    -- 参数1:开始查询的索引
    -- 参数2:每页显示的条数
    
  2. 分页查询的开始索引计算方式:

LIMIT (要查询的页码-1) * 每页显示条数,每页显示的条数;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值