文章目录
一、增删查表中数据
1.添加数据:
语法:insert into 表名 (列名1,列名2,…列名n)value(值1,值2,…值n);
注:
1. 列名和值要一 一 对应。
2. 若表名后不写对应列名,则默认给所有的列添加值。
3. 除了数字类型,其它类型需要引用号(单双都可以)包含。
2.删除数据:
语法:delete from 表名 [where 条件]
注:
1.若不加条件,则删除表中所有;
2. 若要删除所有记录可以使用以下两种语句:
*delete from 表名;-- 不推荐使用,因为当有多少记录次语句就会执行多少次删除操作;
*truncate table 表名; -- 此语句先删除一张表,再创建一张相同的空表;
3.查询表中数据
3.1.基础查询
1.多个字段查询:select 字段名1,字段名2,....,字段名n from 表名;
2.直接查询所有字段:select * from 表名;
3.去重复:distinct;
4.计算列:一般可用四则运算。(计算列值,一般只会数值运算)
注*当有NULL值时可使用以下语句:if null (表达式1,表达式2);-- 表达式1是需要判断是否为NULL的字段,若为NULL则使用表达式2替换。
* 一般null参加的运算,运算结果都是null。
3.2条件查询
1.where子句后跟条件;
2.运算符:>, <, <= ,>=, =, <>(不等于号),
3.其他:between...and, in(集合), like(模糊查询), _(任意单个字符),%(任意多个字符), is null, and或&&, or或||, not或!;
二、DQL查询语句
1.排序查询
语法:order by 排序字段 排序方式, 排序字段2 排序方式2,…;
方式:asc – 升序排序 desc – 降序排序
注:当有多个排序条件时,当前条件值一样时,才会判断第二条件。
2.聚合函数(将一列数据作为一个整体进行纵向计算)
- count计算个数:
select count(列名) from 表名;
- max计算最大值:
select max(列名) fom 表名;
- min计算最小值:
select min(列名) fom 表名;
- sum计算和:
select sum(列名) fom 表名;
- avg计算平均值:
select avg(列名) fom 表名;
注:聚合哈函数计算排除NULL值,因此可以选择不包含null值得列进行计算或者使用if null函数。
3.分组查询
语法:group by 分组字段;
eg:
select sex,avg(age) from student group by sex;
select 列名,聚合函数 from 表名 group by 列名;
4.分页查询
语法:limit 开始的索引,每页查询的条数;
select *from student limit 0,3;
公式:开始索引 = (当前页码-1)*每页显示条数
eg:
select *from student limit 0,3;-- 第一页
select *from student limit 3,3;-- 第二页
select *from student limit 6,3;-- 第三页
注:limit是MySQL的一个方言(什么是方言?)。