第三周第一天数据库加强增删改&备份
复习上周
关键字
查
select从哪张表
from普通条件过滤
where排序
order by升序
asc降序
desc取查询结果前几条
limit mysql
rownum oracle
top sqlsever模糊查询
like通配符
% 匹配0-n个任意字符
_ 匹配1个任意字符多条件连接
and 且
or 或
not 非(凑位置)包含
in (,,)两者之间
between and 闭区间分组
group by聚合函数
统计 count()
求和 sum()
平均 avg()
最大 max()
最小值 min()对聚合函数过滤
having去重
distinct多表关联
1.先关联后筛选
where
2.先筛选后关联
join
2.1 内连接
inner join on
join on
2.2左连接
left join on
2.3右连接
right join on
2.4全连接
full join on
练习题
1.查询 比王芳操作系统课成绩高的所有学生
2.查询平均成绩高于60分的课程名
增删改
增
关键字
insert into
格式
- 插入单条数据
insert into 表名 (字段名1,字段名2,..) value(值1,值2,...);
- 插入多条数据
insert into 表名 (字段名1,字段名2,..) values(值1,值2,...),(值1,值2,...),(值1,值2,...);
练习
1.往学生表中插入一条数据 学生编号 110,姓名 小明,性别 待定,班级 9503
改
关键字
update
格式
update 表名 set 字段名=字段值,字段名=字段值,.. where 条件;
练习
1.把小明的性别改为男
删
关键字
delete
格式
delete from 表名 where 条件
练习
删除学生编号为110的学生
练习
1.学生表中新增一个学生,学生姓名 小王,生日 2018-01-01,性别女
2.在成绩表中,添加一条数据,学生姓名 小张,课程名 语文,成绩 1分
3.把小张的语文成绩修改为100分
4.删除所有姓名为小张的同学
表备份
备份到临时表
只备份表结构
create table 临时表名 as select * from 源表名 where 1=2;
备份数据+结构
create table 临时表名 as select * from 源表名 where 1=1;
备份成sql脚本
备份成csv文件
扩展(背)
增
把数据从一张表备份到另一张表中
- 两张表结构完全相同
insert into 目标表 select * from 数据源 where 条件
- 两张表结构不同
insert into 目标表 (字段名1,字段名2,..) select 字段1,字段2,.. from 数据源 where 条件
建表
create table
建库
create database
改
修改表结构
alter
删
清表
- 只删除表数据,不清内存
delete from 表名
- 全部清空
truncate table 表名
- 删表
drop table 表名
- 删库
drop database 库名
统计类页面测试
讲表与表之间的关系
作业
根据讲的内容画ER图