美文网首页
查询的高级操作

查询的高级操作

作者: 有趣的恶魔QAQ | 来源:发表于2019-04-25 19:42 被阅读0次

    一、聚合

    1.max()、min()、sum()、avg()、count() — 对字段进行操作(一般针对数字类型,聚合运算的结果才是整个运算的结果)

    语法:select 聚合函数(字段) from 表名 where 条件语句;
    例如:

    • select max(字段) from 表名; — 获取最大值
    • select min(字段) from 表名; — 获取最小值
    • select sum(字段) from 表名; — 求和
    • select avg(字段) from 表名; — 求平均值
    • select count(字段) from 表名 where 条件语句; — 统计满足条件的个数
      注意:如果参与运算的对象的值为null,那么这个数据不会参与运算

    二、分组

      将指定表中满足条件的记录按字段2进行分组,然后每个分组作为整体按照字段操作进行聚合操作
    语法:
    select 字段操作 from 表名 where 条件语句 group by(字段2);

    注意:字段操作的位置除了分组字段不用聚合,其他字段都必须聚合

    三、子查询和连接查询

    • 子查询:将一个查询的结果作为另外一个查询的数据源
      注意:子查询最好将查询结果重命名,即存到一个临时表中
    • 连接查询:同时查询多个表中的数据
    1.连接查询

    语法:
    select 字段1,字段2... from 表1,表2... where 连接条件;

    注意:连表查询的时候如果不加连接条件,那么查询结果为笛卡尔积;如果连接查询的时候既有连接条件也有筛选条件,那么筛选条件要放在连接条件后面;连接查询的关键是找到共同关系

    2.连接查询中的内连接

    语法:

    select 字段1,字段2,字段3 from 字段3所对应的表3
     inner join 字段1对应的表1 on 表1的连接条件 
    inner join 字段2对应的表2 on 表2的连接条件
    

    注意:内连接中,字段和表之间应一一对应

    3.外连接

    外连接分为左外连接、右外连接和全连接,但是在MySQL中只支持左外连接和右外连接
    语法:
    select 字段1,字段2 form 表1 left/right/ join 表2 on 条件语句

    四、字段索引

    字段的索引就相当于目录,作用是为了能够快速的对这个字段进行查找

    • 优点:可以大大的提高查找的效率
    • 缺点:1.消耗额外的存储空间。 2.添加和删除的效率降低
    • 语法:
      create index 索引名 on 表名 (字段名);

    相关文章

      网友评论

          本文标题:查询的高级操作

          本文链接:https://www.haomeiwen.com/subject/crnayqtx.html