6.2 单表查询

6.2.1 查询所有字段

  1. select语句中使用星号(*)通配符查询所有字段

     SELECT * FROM <表名>
  2. select语句中指定所有字段

     SELECT <列名1>, <列名2>, ..., <列名n> FROM <表名>

6.2.2 查询指定字段

  1. 查询单个字段

     SELECT 列名 FROM 表名
  2. 查询多个字段

     SELECT 字段名1, 字段名2, ..., 字段名n FROM 表名

6.2.3 查询指定记录

SELECT 字段名1, 字段名2, ..., 字段名n
FROM 表名
WHERE 查询条件

备注:

​ = : 相等

​ <> , != :不等

​ < : 小于

​ <= : 小于等于

​ > : 大于

​ >= : 大于等于

​ BETWEEN : 位于两值之间

6.2.4 带IN关键字的查询

备注:查询某个字段的值在指定的值之中

6.2.5 带BETWEEN AND的范围查询

备注:指定某个字段的值在起始值与结束值之间

6.2.6 带LIKE的字符配查询

  1. 百分号通配符%,匹配任意长度的字符,甚至包括零字符

    备注:%所在位置表示需要匹配的位置,在前表示前面可以 为任意内容,在后表示后面可以为任意内容,两边都 有表示两边可以为任意内容

  2. 下划线通配符_,。一次只能匹配任意一个字符

    备注:匹配任意位置的唯一字符

6.2.7 查询空值

备注: IS NULL表示这个值是空的,非空为IS NOT NULL

6.2.8 带AND的多条件查询

备注:可以有多个AND拼条件

6.2.9 带OR的多条件查询

备注:表示上述内容,表示两个满足一个即可

注意:OR可以和AND一起使用,但是AND的优先级要高于OR, 所以请注意优先级

6.2.10 查询结果不重复

备注:DISTINCT表示查询结果不重复

6.2.11 对查询结果排序

  1. 单列排序

  2. 多列排序

  3. 指定排序方向

    备注:对字段进行排序,ASC表示正序,默认就是正序 DESC表示倒序

    ​ 多列排序时候,如果排序方式不同,最好分开标注

6.2.12 分组查询

基本语法形式:

  1. 创建分组

    备注:分组一般与多个函数使用

    MAX() 获取最大值

    MIN() 获取最小值

    COUNT() 计数

    SUM() 求和

    AVG() 求平均值

    GOUP_CONCAT() 展示分组的所有内容

  2. 使用HAVING过滤分组

    备注:根据条件对分组进行过滤

    ​ 如:HAVING COUNT(字段名) > 1

    ​ (分组后内容大于1的分组)

  3. GROUP BY字句中使用WITH ROLLUP

    备注:最后一列加上一个数字,表示上面所有分组内容 的总条数(最好与COUNT(*)计数想通用)

  4. 多字段分组

    备注:先根据列名1排序,再根据列名2排序

  5. GROUP BYORDER BY一起使用

    备注:根据列名1进行分组,然后根据列名2进行排序

    ​ 如果使用了WITH ROLLUP,就不可以排序

6.2.13 使用LIMIT限制查询结果的数量

基本语法:

  1. 查询多少条

    备注:表示查询多少条

  2. 指定开始查询条数

    备注:表示从第几行开始,一共取多少行

最后更新于

这有帮助吗?