1.增 insert 向数据库中插入新的数据
使用set里设置新数据的值,没有顺序关系
insert into student set age=30,sex="男",username='李青'
2.删 delete 从数据库中删除数据
# 删除一条数据
delete from student where id=11
# 删除满足条件的数据
delete from student where id>6
# 没有指定条件,删除全部数据
delete from student
3.改 update 更新数据库中的数据
语法:update 表名 set 字段1=值1,字段2=值2,...where修改条件
注意:一定要加where条件,不然就是全部修改
update student set age=20,sex="女" where id=11
不加条件,则是全部修改,比如把所有人的年龄+1
update student set age = age + 1
4.查 select 从数据库中查询数据
基本语法:select 字段1,字段2,...form 表名
#1 查询所有学生表的全部信息
select * from student
#2 查询所有学生的姓名和年龄
select username,age from student
复杂语法(根据不同条件类型进行查询)
① where条件:where可以使用条件来筛选查询出的结果
select *from student where 条件
# 查询id小于10的学生
select * from student where id<>10
# 查询id小于20的女学生<不要写&& ||>而应该是<and or>
select * from student where id<20 and sex="女"
# 查询年龄大于等于20小于等于30的学生
select * from student where age>=20 and <=30
select * from student where age between 20 and 30
② 模糊查询 (查询的不是那么明确的条件 )
通配符:
%:代表任意长度(包括0)的任意字符
_:代表1位长度的任意字符
like:在执行模糊查询时,必须使用like来作为匹配条件
带where条件的模糊查询
select * from 表名 where 字段 like "%关键字%"
#1 查询名字中带有飞的
select * from student where username like '%飞%'
#2 查询名字的最后一个字是祥的
select * from student where username like '%祥'
#3 查询网开头的同学,两个字的名字
select * from student where username like '王_'
③统计查询(最大值,最小值,平均值,总和,总记录数)
查询最大的年龄
select max(age) from student
查询最小的年龄
select min(age) from student
查询年龄的平均值
select avg(age) from student
查询年龄的总和(所有人的年龄加在一起)
select sum(age) from student
查询总记录数(一共有多少条数据)
select count(*) from student
查询出来的结果最终给前端,所有可以为查询的字段 定义别名
select count(*) as total from student
select count(*) total from student
④排序(对查询结果进行排序)
语法:select * from student order by 字段 [asc/desc] ##asc表示升序,desc表示倒序
#1 查询所有学生,并按年龄升序排序
select * from student order by age
select * from student order by age asc#2 查询所有学生,按年龄降序排序
select * from student order by age desc
#3 查询所有的男同学,并按年龄降序排序
select * from student where sex="男" order by age desc
⑤限制查询条数(类似于截取查询结果)
语法:select * from student limit 起始位置,长度
起始位置:从0开始,0表示第1条数据的位置,如果从0的位置开始截取,0可省略
长度:表示长度的数字
#1 查询所有学生中的第1,2,3个
select * from student limit 0,3
select * from student limit 3
#2 查询所有学生中的第4,5,6个
select * from student limit 3,3
注意:如果SQL语句中有条件,有排序,有limit,顺序应该是先写条件,在写排序,最后写limit,并且每部分之间用空格隔开
#3 查询年龄最大的学生的全部信息(id,username,age,sex)
select * from student order by age desc limit 1
#4 查询年龄最小的所有女同学的信息
select * from student where sex='女' order by age asc limit 1