navicat操作数据库 数据查询功能


1.select语句    

 SELECT * FROM <表名>;

1.1.通配符的使用:

    通配符 *   :查询所有的列等等

    通配符 _   :匹配一个字符

    通配符 %:匹配任意长度的字符,包括空字符串

1.2.查询关键字

  1.2.1 关键字  distinct的用法  除去数据重复的值  

SELECT DISTINCT [字段名] FROM <表名>

  1.2.2关键字  like的用法    like与通配符配合使用

 SELECT [字段名1,字段名2,…]
          FROM <表名>
          WHERE [字段名] [ NOT ] LIKE ‘匹配字符串’

2.子查询

常用的子查询语句有五种:

  • 条件查询(where子句):按照“条件表达式”指定的条件进行查询。
  • 分组查询(group by子句):按照“属性名”指定的字段进行分组。group by子句通常和count()、sum()等聚合函数一起使用。
  • 筛选查询(having子句):有group by才能having子句,只有满足“条件表达式”中指定的条件的才能够输出。
  • 排序查询(order by子句):按照“属性名”指定的字段进行排序。排序方式由“asc”和“desc”两个参数指出,默认是按照“asc”来排序,即升序。
  • 限制查询(limit):限制结果集。

2.1条件查询(where子句)

  where子句常与运算符配合使用

2.2分组查询(group by子句)

  分组将一个区域划分成多个小区域,对多个小区域进行数据处理

select 类别, sum(数量) as 数量之和
from A
group by 类别

2.3筛选查询(having子句)  针对“组”里面条件进行筛选

  having一般跟在group by之后,执行记录组选择的一部分来工作的。where则是执行所有数据来工作的。
  再者having可以用聚合函数,如having sum(qty)>1000。

2.4排序查询(order by子句)

  • order by <列名>             #  默认升序排列 
  • order by <列名> desc    # 降序排列
  • order by <列名> asc      # 升序排列
  • order by rand()              # 随机排列

2.5限制查询(limit子句)

  在查询语句中,我们想要只返回前面几行数据

  limit [offset] N

SQL