MySQL数据查询关键字()

昨日内容回顾

  • 数据基础约束条件
    非空 唯一 无符号 零填充
  • 主键的使用
    具有唯一性标识的字段即为主键,主键常采用自增的数字。
    数字的自增进程单独记录,不会因为数据的删除回退,但是对主键字段主动赋值会改变自增进程。
  • 外键的使用
    外键使用分三个情形:
    一对多,外键设置在对应多个数据的数据那张表中;
    多对多,需要新建一张表储存数据的对应关系,使用外键关联原数据的主键;
    一对一,外键设置在查询频率较高的数据表中。
    绑定外键的数据值默认无法修改或删除,想要同时修改或删除使用cascade关键字

今日内容概要

  • 数据查询关键字where
  • 数据查询关键字group by
  • 数据查询关键字having
  • 数据查询关键字distinct
  • 数据查询关键字order by
  • 数据查询关键字limit
  • 数据查询关键字regexp
  • 多表查询的思路

今日内容详细

数据查询关键字where

where后跟条件定位,得到满足条件的数据组成的表。

对数字筛选可以使用between关键字,筛选指定区间的数字,包含等于。

筛选空值的条件为is null

模糊条件

% 代替任意数量的任意字符

_ 代替一个任意字符

数据查询关键字group by

可对where筛选后的数据进行分组,得到分组依据的字段下的数据的分组结果组成的表。

使用group by关键字时,前边select后也需要跟分组依据的关键字。

聚合函数

使用聚合函数max/min/avg/sum/count对数据进行数学计算。

分组依据外字段

默认情况下无法展示分组下其他字段对应数据,使用group_concat()方法将数据连接后进行展示。

数据查询关键字having

对group by分组后的数据进行进一步筛选,得到满足指定条件的数据组成的表。

数据查询关键字distinct

筛选表中指定字段中的独一无二的数据,得到该字段中不重复的数据组成的表。

若指定的的是字段的组合,则组合结果不完全相同即判定为不同。

数据查询关键字order by

对表中的数据按照指定字段排序,并得到一张排序后所选数据的表。

asc ascend的缩写,升序排序关键字,默认升序可不写。

desc descend的缩写,降序排序关键字。

排序可指定多个排序条件,按照从左往右的数据,依次在前一个字段的排序结果下继续排序。

数据查询关键字limit

得到限定数量的数据组成的新表,填写一个数字为从头开始展示几个,两个数字为跳过第一个数字的数量,向下展示第二个数字数量的数量。

数据查询关键字regexp

得到满足正则表达式的数据组成的表。

多表查询的思路

当选择多个表同时展示时,展示的结果为两个表数据的笛卡尔积。

如果想要展示具有逻辑关系的合理结果,需要手动对两表中具有对应关系的字段进行对照:

select * from table1,table2 where table1.field1=table2.field2
————————

昨日内容回顾

  • 数据基础约束条件
    非空 唯一 无符号 零填充
  • 主键的使用
    具有唯一性标识的字段即为主键,主键常采用自增的数字。
    数字的自增进程单独记录,不会因为数据的删除回退,但是对主键字段主动赋值会改变自增进程。
  • 外键的使用
    外键使用分三个情形:
    一对多,外键设置在对应多个数据的数据那张表中;
    多对多,需要新建一张表储存数据的对应关系,使用外键关联原数据的主键;
    一对一,外键设置在查询频率较高的数据表中。
    绑定外键的数据值默认无法修改或删除,想要同时修改或删除使用cascade关键字

今日内容概要

  • 数据查询关键字where
  • 数据查询关键字group by
  • 数据查询关键字having
  • 数据查询关键字distinct
  • 数据查询关键字order by
  • 数据查询关键字limit
  • 数据查询关键字regexp
  • 多表查询的思路

今日内容详细

数据查询关键字where

where后跟条件定位,得到满足条件的数据组成的表。

对数字筛选可以使用between关键字,筛选指定区间的数字,包含等于。

筛选空值的条件为is null

模糊条件

% 代替任意数量的任意字符

_ 代替一个任意字符

数据查询关键字group by

可对where筛选后的数据进行分组,得到分组依据的字段下的数据的分组结果组成的表。

使用group by关键字时,前边select后也需要跟分组依据的关键字。

聚合函数

使用聚合函数max/min/avg/sum/count对数据进行数学计算。

分组依据外字段

默认情况下无法展示分组下其他字段对应数据,使用group_concat()方法将数据连接后进行展示。

数据查询关键字having

对group by分组后的数据进行进一步筛选,得到满足指定条件的数据组成的表。

数据查询关键字distinct

筛选表中指定字段中的独一无二的数据,得到该字段中不重复的数据组成的表。

若指定的的是字段的组合,则组合结果不完全相同即判定为不同。

数据查询关键字order by

对表中的数据按照指定字段排序,并得到一张排序后所选数据的表。

asc ascend的缩写,升序排序关键字,默认升序可不写。

desc descend的缩写,降序排序关键字。

排序可指定多个排序条件,按照从左往右的数据,依次在前一个字段的排序结果下继续排序。

数据查询关键字limit

得到限定数量的数据组成的新表,填写一个数字为从头开始展示几个,两个数字为跳过第一个数字的数量,向下展示第二个数字数量的数量。

数据查询关键字regexp

得到满足正则表达式的数据组成的表。

多表查询的思路

当选择多个表同时展示时,展示的结果为两个表数据的笛卡尔积。

如果想要展示具有逻辑关系的合理结果,需要手动对两表中具有对应关系的字段进行对照:

select * from table1,table2 where table1.field1=table2.field2