1.单表创建视图

例如:创建一个选择语句,选出学生的编号,姓名和考号

//创建一个视图名字为stu_view1选择 来自数据表student中的id,name 和kn 中的数据

create view stu_view1  as select id as '编号',name as'姓名',kn as '考号' from student;

例如:创建一个选择语句,出学生id和总成

create view score_view1 as select id as '编号',sc.math+sc.chinese +sc.english+sc.mul as
'总成绩' from score as sc;

2.多表创建视图

例如:创建一个选择语句,选出学生姓名和总成绩

select s.name as '学生姓名' , sc.math +sc.chinese+sc.english+sc.mul as '总成绩'from

student as s,score as sc where s.id=sc.s_id ;

创建多表视图

//创建一个对表视图名字为s_sc_view2 选择来自数据表student 中学生的姓名和选择来自数据表score 中所有学科成绩相加的总成绩 ,两张数据表中的数据要相对应(where s.id = sc.s_id)

a.  create  or replace   view s_sc_view2 as select s.name as '学生姓名' , sc.math +sc.chinese+sc.english+sc.mul as '总成绩'from student as s,
score as sc where s.id=sc.s_id ;

b.  create or replace view s_sc_view3 (学生姓名,总成绩) AS select s.name ,

sc.math +sc.chinese +sc.english+sc.mul from student as s ,score as sc where s.id =sc.s_id;

  create  表示创建。 

 or replace 表示视图已经存在,就替换

view_name 视图名字

as 后面是选择的字段(一个表或者多个表中)

3.查看视图中的数据

select * from s_sc_view2;//s_sc_view2是视图名

4.查看视图结构

desc view_name;

5.查看视图创建语句

show create view s_sc_view2;

6.查看视图信息

show table status like 'stu_view';(虚拟表为NULL)

7.查看数据表信息

show table  status like 'score';(真实表不为空)

8.视图修改

在视图stu_view5的基础长增加city(城市字段):

a.通过or replace 覆盖的方式修改视图

create or replace  view stu_view5 (姓名,考号,城市) as select name,kn,city from student;

b.通过alter  关键子的方式修改视图

alter view stu_view (姓名,考号,城市) as select name,kn,city from student;

9.视图更新(内容)

创建一个视图内容有:学生编号、总分、综合、主科目

create or replace view score_view2 (学生编号,总分,综合,主科目)as select sc.s_id ,

sc.math + sc.chinese +sc.english +sc.mul,sc.mul,

sc.math+sc.english +sc.chinese from score as sc;

a.使用update 语句(修改数据内容)

update  score_view2 set 综合=156 where 学生编号=1003;

b.使用delete 语句(删除数据)

delete from score_view2 where 学生编号=1005;

通过上面视图上面的更新(修改)和删除会影响到真实表(数据表)中的数据;

10.视图的删除

drop view if exists score_view1;

mysql 创建视图的更多相关文章

  1. mysql创建视图和存储过程,变量

    创建视图 sql>create view 视图名 as select语句; 修改视图并添加别名 sql>create or replace view empvu10 (employee_n ...

  2. mysql创建视图

    CREATE ALGORI`sync_user`CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER V ...

  3. MySQL创建视图和Union all的使用案例

     CREATE VIEW netcheck.cpu_mp AS (SELECT  cpu.ID AS id,  cpu.chanel_name AS chanel_name,  cpu.first ...

  4. MySQL使用Union创建视图报错

    mysql> select * from test_main; +----+-------+ | id | value | +----+-------+ |  1 | ONE   | |  2  ...

  5. 转: mysql create view 创建视图

    以下的文章主要是对MySQL视图的描述,其中包括MySQ视图L概述,以及创建MySQL视图-create view与修改MySQL视图--alter view等相关内容的具体描述,以下就是文章的具体内 ...

  6. MySQL的视图view,视图创建后,会随着表的改变而自动改变数据

    首先是创建视图 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `new_view` A ...

  7. MySQL/Oracle视图的创建与使用

    1.什么是视图? 视图是一个虚拟的表,是一个表中的数据经过某种筛选后的显示方式,视图由一个预定义的查询select语句组成.   2.视图的特点. 视图中的数据并不属于视图本身,而是属于基本的表,对视 ...

  8. MySQL视图的优缺点以及如何创建视图

    视图,虚拟表,从一个表或多个表中导出来的表,作用和真实表一样,包含一系列带有行和列的数据 视图中,用户可以使用SELECT语句查询数据,也可以使用INSERT,UPDATE,DELETE修改记录,视图 ...

  9. MySQL笔记---视图,存储过程, 触发器的使用入门

    大二学数据库的时候,只是隐约听到老师提起过视图啊,存储过程啊,触发器啊什么的,但只是淡淡的记住了名字,后来自己做些小项目,小程序,也没有用上过,都只是简单的建表,关联表之类的,导致我对这些东西的理解只 ...

随机推荐

  1. 软工冲刺-Alpha 冲刺 (3/10)

    队名:起床一起肝活队 组长博客:博客链接 作业博客:班级博客本次作业的链接 组员情况 组员1(队长):白晨曦 过去两天完成了哪些任务 描述: 很胖,刚学,照猫画虎做了登录与注册界面. 展示GitHub ...

  2. Khan Academy

    Khan Academy是一个免费的学院. 致力于教育改革. 百度百科:ohn Resig 百度百科有记者采访,采访内容比较有意思.

  3. spring框架(1)— 依赖注入

    依赖注入 spring核心容器就是一个超级大工厂,所以的对象(数据源.hibernate SessionFactory等基础性资源)都会被当做spring核心容器的管理对象——spring把容器中的一 ...

  4. 原生js操作Dom节点:CRUD

    知识点,依然会遗忘.我在思考到底是什么原因.想到研究生考试准备的那段岁月,想到知识体系的建立,知识体系分为正向知识体系和逆向知识体系:正向知识体系可以理解为教科书目录,逆向知识体系可以理解考试真题. ...

  5. 利用Vue v-model实现一个自定义的表单组件

    原文请点此链接  http://blog.csdn.net/yangbingbinga/article/details/61915038

  6. 【Docker 教程】- Docker 架构

    1.Docker 使用客户端-服务器 (C/S) 架构模式,使用远程API来管理和创建Docker容器. 2.Docker 容器通过 Docker 镜像来创建. 3.容器与镜像的关系类似于面向对象编程 ...

  7. android gradle打包常见问题及解决方案

    背景: 问题: Q1: UNEXPECTED TOP-LEVEL ERROR: java.lang.OutOfMemoryError: Java heap space at com.android.d ...

  8. Linux系统的性能测试

    性能测试:CPU内存,硬盘IO读写,带宽速度,UnixBench 一.CPU物理个数.内核.超线程.多核心 1.登录Terminal,执行:cat /proc/cpuinfo,就会显示出主机的CPU详 ...

  9. 修改IP的批处理

    昨天遇到一个客户,说是抢火车票来着,用了3个公网IP,要求在抢票前15分钟换次IP(看我这毛病,废话多了,正题) 系统是2003 32位的 因为自己不懂脚本,网上找了个修改了下,就有了下面的脚本: 首 ...

  10. AMH面板命令操作大全

    LNMP面板 - AMH 命令使用nginx篇 » SSH Nginx1) 有步骤提示操作: ssh执行命令: amh nginx然后选择对应选项进行操作. 2) 或直接操作: 启动Nginx: am ...