zoukankan      html  css  js  c++  java
  • 数据操作

    一, 数据操作(高级操作)

    a) 蠕虫复制(insert into 表名(字段列表) select *|字段列表 from 表名)

    b) 主键重复:insert into 表名(字段列表)values(值列表)on duplicate key update 字段1=1,字段2=2……    replace into 表名(字段列表) values(值列表)

    c) 删除和修改的时候都可以加上order bylimit子句

    d) select选项(alldistinct,缺省值是all

    e) 别名:字段|表达式|表名|子查询

    二, 虚拟表(dual

    三, 五子句

    a) where

    1. where的语法和流程
    2. Mysql运算符(关系运算符,逻辑运算符、between andinnot in
    3. where子句的其他形式:空值查询(is [not] null),模糊查询(like、通配符_%

    b) group by子句:分组统计查询语句,往往就是配合着统计函数(聚合函数)一起使用

    1. 统计函数:maxminsumavgcount
    2. 统计函数可以单独使用,此时相当于把整个表分成一组
    3. 多字段分组
    4. 回溯统计(向上统计),with rollup

    c) having子句

    1. 如果查询语句中只有where或者只有having的时候,二者基本没有区别
    2. where子句的本质是将数据从磁盘筛选到内存中,而having子句是将内存中的数据再次进行筛选
    3. where子句后面不能使用统计函数,但是having子句可以,因为只有在内存中的数据才能直接参与运算

    d) order by子句:根据某个字段进行排序,也可以多字段排序(升序asc,也是默认值,降序desc

    e) limit子句:limit offsetlength,其中偏移量是从0开始,如果省略就默认为0!分页的原理是: limit ($pageNum - 1) * $rowsPerPage,$rowsPerPage

    四, 联合查询

    a) 关键字:unionunion选项是alldistinct,缺省值是distinct

    b) 应用场景:1,当业务逻辑出现冲突或者很难在同一个select语句中实现的时候,需要对业务逻辑进行拆分,用多个select语句单独实现然后再联合到一起;2,当一个表的数据量比较大的时候(尤其是超过1000w),往往需要对表进行“水平分割”(此时多张表的结构是一样是,只是存放的数据不一样),此时如果要查询数据,往往是多个表分别查询然后再联合到一起

    五, 连接查询(交叉连接:做表的笛卡尔积)

  • 相关阅读:
    hexo部署失败如何解决
    github设置添加SSH
    鼠标相对于屏幕的位置、鼠标相对于窗口的位置和获取鼠标相对于文档的位置
    git push origin master 错误解决办法
    js设计模式:工厂模式、构造函数模式、原型模式、混合模式
    d3.js实现自定义多y轴折线图
    计算机网络之HTTP(上)基础知识点
    Node.js学习笔记(一)基础介绍
    计算机组成
    Ajax及跨域
  • 原文地址:https://www.cnblogs.com/zcbing/p/6111920.html
Copyright © 2011-2022 走看看