增删改查表中的数据
- 增加数据
INSERT INTO 表名(key1, key2, ..., keyn) VALUES(val1, val2, ..., valn);
- 删除数据
- 删除指定数据
delete form 表名 where (条件);
- 删除全部数据
TRUNCATE TABLE 表名; // 先删除表,再创建一张相同的空表
- 修改数据
update 表名 set key1=val1, key2=val2, ... keyn=valn where (条件);
- 数据库查询
- 基础查询
- 查询全部
select * from 表名
- 查询指定列
select key1, key2, ..., keyn from 表名;
- 唯一性查询
select distinct age from 表名;
- 运算查询
select key1 + key2 from 表名;
IFNULL(表达式1,表达式2) // 表达式1是要判断的字段是否为null, 表达式2是null后替换的值
- 起别名
select key as other from 表名;
- 查询全部
- 条件查询
- where(条件)
- 运算符
- > 、 < 、 <=…
- BETWEEN…AND
- IN(集合)
- LIKE
- IS NULL
- and 或 &&
- or 或 ||
- net 或 !
- 特别注意模糊查询
select * from 表名 where key like ...
- %: 匹配0个或者多个字符,中文使用两个
- _: 表示匹配单个任意字符(单个)
- []:表示匹配括号内所列字符的一个(类似于正则表达式)。
- [^]:表示不在括号所列之内的单个字符
- 排序查询
- order by 排序字段 排序方式
select * from 表名 order by key
- 排序方式
- asc: 升序(默认)
- desc:降序
- order by 排序字段 排序方式
- 聚合函数:将一列数据作为一个整体,进行纵向的计算
- count:计算个数
- max: 计算最大值
- min:计算最小值
- sum:计算和
- avg:计算平均值
- 分组查询
- group by 分组字段
- 注意:
- where 和 having 的区别
- where:在分组之前进行限定,不满足则不参与分组
- having:在分组之后进行限定,不满足结果,则不会被查询出来
- where 和 having 的区别
- 分页查询
- limit 开始的索引,每页查询的条数
- 公式:开始的索引 = (当前的页码 - 1)* 每页查询的条数
select * from table limit 3,3