DDL:数据定义语言:表结构
DML:数据操作语言:表记录
DQL:数据查询语
DCL:数据控制语言
sql:结构化查询语言
DML:针对表记录的增删改;
增加:
insert into
修改:
将年龄为20的学生的性别修改为女;
条件:age = 20;
结果:sex = ‘女’
句式:
update t_stu set sex=‘女’ where age = 20;
修改多列数据:每列之间使用逗号隔开;
根据学生的学号修改所有的信息
update t_stu set sname=‘大奔’,age=19,sex=‘女’ where sno=3;
添加数据:
insert into t_stu values(2,'王五',18,'男'),(3,'赵六',20,'女'),(4,'老王',30,'男'),(5,'凤姐',23,'女');
删除:
将名字为张三的数据删除;
条件:sname='张三'
delete from t_stu where sname='张三';
TRUNCATE TABLE 表名:TRUNCATE是DDL语句,它是先删除drop该表,再create该表。而且无法回滚!!!
条件:
=、!=、<>、>、<、>=、<=、BETWEEN...AND、IN(...)、IS NULL(== null)、NOT(!)、OR(||)、AND(&&)
查询:
20-30之间的学生信息;
条件:where age>=20 and age<=30;
BETWEEN...AND: age between 20 and 30
in('李四','王五');
or: age=18 or sname='赵六'
is null: sex 为空的数据:sex is null;
is not null;
DQL:
select * from 表名:查询所有的数据:*代表所有列
查询所有学生的名称:sname
select sname as ‘姓名’ from t_stu;—》as:取别名,可以省略不写;
模糊查询:
_:代表一个字符
%:代表多个;
关键字:like
查询名字由两个字构成的学生
select * from t_stu where sname like '__';
查询名字中包含三的学生;
select * from t_stu where sname like '%三%'
查询以大字开头的学生的信息;
sname like '大%'; ‘%大’:以大字结尾
排序:order by
1.根据年龄升序排列
select * from t_stu order by age;
2.降序排列
select * from t_stu order by age desc;
3.根据学号升序,根据年龄降序
select * from t_stu order by sno asc,age desc;
聚合函数:
COUNT 计数 ●MAX 求最大值
●MIN 求最小值
●SUM 求和
●AVG 求平均数
分组:
group by:
根据性别分组,分别统计男生和女生的个数;
select sex,count(*) from t_stu group by sex;
过滤:having:适用于分组后面;
分页:
limit m,n;
m:从0开始; m = n*(页数-1);
n:当前页展示的数据的条数;
重点:
DML:增删改 DQL:查询