【MySQL开发技巧】视图

编程要求

student表数据结构:

stu_idnamemathchinese
1Tom8078
2Jack7080
3Lucy9795

stu_info表数据结构:

stu_idclassescity
11633长沙
21632重庆
31633成都

编程任务

在student表上创建视图stu_view,查询math、chinese字段并定义一个math+chinese成绩之和字段,值为两者之和;

在student表和stu_info表上,创建stu_classes视图,查询出stu_id、姓名和班级,查询条件为两表中的stu_id字段相同。

代码实现

在这里插入图片描述

输出结果

在这里插入图片描述

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在student表上创建视图stu_view,查询math、chinese字段定义一个math+chinese成绩之和字段,值为两者之和: CREATE VIEW stu_view AS SELECT stu_id, name, math, chinese, math+chinese AS total_score FROM student; 在student表和stu_info表上,创建stu_classes视图查询出stu_id、姓名和班级,查询条件为两表中的stu_id字段相同: CREATE VIEW stu_classes AS SELECT s.stu_id, s.name, i.class FROM student s INNER JOIN stu_info i ON s.stu_id = i.stu_id; ### 回答2: 在创建视图之前,需要先了解试图的定义和作用。视图是一种虚拟的表格,它是从存储在数据库中的一个或多个表格导出的表格,是根据特定的查询语句定义的,可以简化查询操作,并提高查询效率。 在上述题目中,需要创建两个视图: 1.创建名为stu_view的视图查询math、chinese字段定义一个math chinese成绩之和字段,值为两者之和 创建stu_view视图的SQL语句如下: CREATE VIEW stu_view AS SELECT name, math, chinese, math+chinese AS total_score FROM student; 这个视图将返回student表的三个字段:name、math、chinese,还有一个称为total_score的新列,该列的值是math和chinese列的值之和。 2.在student表和stu_info表上,创建名为stu_classes的视图查询出stu_id、姓名和班级,查询条件为两表中的stu_id字段相同。 创建stu_classes视图的SQL语句如下: CREATE VIEW stu_classes AS SELECT student.stu_id, student.name, stu_info.class FROM student INNER JOIN stu_info ON student.stu_id = stu_info.stu_id; 这个视图将在student表和stu_info表中进行内连接,将结果集中的stu_id、name和class列组合在一起,以便更方便、快捷地查询学生所在的班级信息。INNER JOIN是等值连接的一种,它选取两个表中互相匹配的行,只要满足连接条件,就会将它们组合起来。以上语句中,连接条件是student表的stu_id列和stu_info表的stu_id列相等。 ### 回答3: 在student表上创建stu_view视图,可以通过以下代码实现: ``` CREATE VIEW stu_view AS SELECT stu_id, name, math, chinese, (math + chinese) AS total_score FROM student; ``` 以上代码中,我们使用SELECT语句查询出学生表里的stu_id、name、math、chinese以及我们自定义的total_score字段。其中total_score字段的值为math和chinese字段值的和。 接着,在student表和stu_info表上创建stu_classes视图,可以使用以下代码: ``` CREATE VIEW stu_classes AS SELECT student.stu_id, student.name, stu_info.class FROM student INNER JOIN stu_info ON student.stu_id = stu_info.stu_id; ``` 以上代码中,我们首先使用INNER JOIN语句连接student表和stu_info表,通过stu_id字段进行关联。然后,我们使用SELECT语句查询出学生表里的stu_id、name以及stu_info表里的班级信息,并将其定义为stu_classes视图。 总之,视图的创建可以大大简化我们的数据查询和管理过程,提高数据库的效率和安全性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值