zoukankan      html  css  js  c++  java
  • MySQL单表查询

    一. 单表查询语法

      select 字段1,字段2,... from 表名 where 条件 group by field having 筛选 order by field lieit 限制条件.

      关键字的执行优先级 :

        1. from 找到某一个表

        2. where 用where的约束条件,去文件/表中取出数据

        3. 将取出的数据使用group by 进行分组,如果没有group by,整体作为一组

        4. 将分组的结果使用having后的条件进行筛选

        5. 执行select

        6. 去重

        7. 将结果按条件排序

        8. 限制结果的显示数量.

    二. where约束

      1. 比较运算符 : >, <, >=, <=, <>, !=.

      2. between 100 and 200 : 判断值在100和200之间的,包含100和200.

      3. in (10,20,50) : 判断值是10或20或50的字段.

      4. like "xxxx% / _" : 模糊查询,%表示可以表示多个字符,_表示单个字符.

      5. 逻辑运算符 : 有多个条件时可以使用逻辑运算符 and or not.

    三. group by 分组查询

      ※ . 分组是发生在where之后,即分组是基于where之后得到的记录而进行的.

      ※ . 如果没有mysql设置ONLY_FULL_GROUP_BY模式,在where之前用也会有查询结果,默认是组内的第一条记录,但是并没有意义.

      ※ . 如果想分组,则必须要设置全局的sql模式为ONLY_FULL_GROUP_BY.

      通过分组后查询的的字段,只能查看组内的信息,需要借助聚合函数.才能查看其它字段的信息.

      1. 聚合函数

        ①. max()  求最大值

        ②. min()  求最小值

        ③. avg()  求平均值

        ④. sum()  求和

        ⑤. count()  求总个数

    四. having  过滤

      having与where不一样的地方在于 :

        执行优先级从高到低 : where > group by > having

        where发生在分组group by之前,因而where中可以有任意字段,但绝对不能用聚合函数.

        having发生在分组group by之后, 因而having中可以使用分组的字段,无法直接取到其他字段,可以使用聚合函数.

    五. order by  查询排序

      排序要写在select语句末尾

      select * from 表名 [ where 条件过滤 ] [ order by 字段 [ asc ] [ desc ] ]

      asc : 升序 默认为升序

      desc : 降序

    六. limit  限制查询的数据数量

      limit可以被用于强制限制select语句返回的记录数量.

      limit接收一个或两个数字参数.如果给定两个参数,第一个参数是指定返回记录行的偏移量(即从第几个记录开始查询),第二个参数是返回记录行的最大数目.默认的初始位置是0.

      limit n offset m    偏移量为m, 去n个值

  • 相关阅读:
    Web 学习笔记
    Canvas 实现灵动的红鲤鱼动画(上)
    Canvas 仿百度贴吧客户端 loading 小球
    使用 Vue 和 epub.js 制作电子书阅读器
    用 Vue 开发一个简单的答题应用(一)
    利用 html2canvas 做个简单的诗词卡片生成器
    FileSaver.js 介绍
    shim 和 polyfill
    clipboard.js 介绍
    (译)通过 HTML、JS 和 Electron 创建你的第一个桌面应用
  • 原文地址:https://www.cnblogs.com/dong-/p/9678981.html
Copyright © 2011-2022 走看看