湖北专升本MySQL复习(MySQL数据库实用教程)——MySQL数据查询(二)

延续上次的MySQL数据查询,今天复习的是数据查询和数据更新。专升本冲冲冲,大家都一定可以上岸的~

数据查询与数据更新

1.1 数据插入

数据插入insert 语句中使用 select 语句,可以将数据表的查询结果添加到目标表中,语法格式为:insert into 目标表名[(字段列表1)] select 字段列表2 from 数据源 [where 条件表达式];

注意:1)字段列表1与字段列表2的字段个数必须相同,对于字段的数据类型保持一致,字段列表1如果省略,则字段列表2必须和目标表的结构一致。

2)数据源可以是多张数据表,where子句可省略。

例:复制表结构:复制student表结构为学生表

create table 学生 like student;

插入数据:将student表中的女生 学生的信息添加到学生表

insert into 学生 select 学号,姓名,性别,出生日期,班级编号 from student
where 性别='女';

查询结果:

select * from 学生;

1.2 数据修改

update 目标表名

set 字段名=(

select 字段名或表达式 from 数据源 where 条件表达式)

where 目标表中的字段名 运算符(select 字段名或表达式 from 数据源

where 条件表达式);

某个学生转班,19生工1班转入19传媒1班。

update student
set 班级编号=(select 班级编号 from classes where 班级名称='19传媒1班')
where 班级编号=(select 班级编号 from classes where 班级名称='19生工1班');

1.3 数据删除

delete from 表名

where 字段名 运算符(select 字段列表

from 数据源

where 条件表达式);

删除学生孙悟空选修龙卷风的记录

delete from choose
where 学号=(select 学号 from student where 姓名='孙悟空')
and 课程号=(select 课程号 from course where 课程名称='龙卷风');

1.4 合并查询结果(union)

合并查询结果使用union和union all关键字。

union关键字是将所有的查询结果合并到一起,然后去除相同的记录;

union all 关键字只是简单地将结果合并到一起。

select 字段列表 from 表1

union [all]

select  字段列表 from 表2;

select * from course where 学分=3
union
select * from course where 学分=4;

猜你喜欢

转载自blog.csdn.net/m0_52475160/article/details/124923873