MySQL基础(4) | 视图


基本语法

1.创建

CREATE VIEW <视图名> AS <SELECT语句>

语法说明如下。

  • <视图名>:指定视图的名称。该名称在数据库中必须是唯一的,不能与其他表或视图同名。
  • <SELECT语句>:指定创建视图的 SELECT 语句,可用于查询多个基础表或源视图。

对于创建视图中的 SELECT 语句的指定存在以下限制:

  • 用户除了拥有 CREATE VIEW 权限外,还具有操作中涉及的基础表和其他视图的相关权限。

  • SELECT 语句不能引用系统或用户变量

  • SELECT 语句不能包含 FROM 子句中的子查询

  • 视图定义中不能引用 TEMPORARY 表(临时表),不能创建 TEMPORARY 视图。

  • SELECT 语句不能引用预处理语句参数

  1. 修改
ALTER VIEW <视图名> AS <SELECT语句>
  1. 删除
DROP VIEW <视图名1> [ , <视图名2> …]

示例:

#创建数据表
create table mygoods(
g_id int AUTO_INCREMENT primary key,
g_name varchar(20),
g_price double,
g_count int
)engine=innodb default CHARSET=utf8; create table myperson(
p_id int AUTO_INCREMENT primary key,
p_name varchar(20),
g_id int,
foreign key fk_pid(g_id)
references mygoods(g_id)
); #插入数据
insert into mygoods(g_name, g_price, g_count) select '梨', 2.2, 3;
insert into mygoods(g_name, g_price, g_count) select '苹果', 5.6, 2;
insert into myperson(p_name,g_id) select '小白',1; #创建视图
CREATE VIEW v_mygoods
as select g_price, g_count, g_price * g_count as total from mygoods;
#查看视图
select * from v_mygoods; create view v_myperson
as select a.p_name, b.g_price * b.g_count as tP from myperson a inner join mygoods b on a.g_id = b.g_id; select * from v_myperson;

最新文章

  1. 通过实现System.IComparable接口的CompareTo方法对两个类进行比较
  2. C#.NET 大型企业信息化系统集成快速开发平台 4.2 版本 - 适合大型企业信息化应用使用的角色权限管理体系
  3. C#面试(2016年4月)
  4. href=&quot;javascript:function()&quot; 和onclick的区别
  5. navicat 的查询功能
  6. Linux查找文件夹名
  7. 【转】edittext设置点击链接
  8. [Head First Python]3. 文件与异常:处理错误
  9. Mantis的附件图片实现预览/弹出层动画效果预览图片(LightBox2)的完美解决方案[Z]
  10. 关于reportng生成的测试报告不按测试执行顺序的解决办法
  11. MySQL -- 关闭 binlog
  12. Reinforcement Learning: An Introduction读书笔记(3)--finite MDPs
  13. js 组件化
  14. Docker 记一次容器内部修改宿主机挂载目录用户权限后宿主机目录变化
  15. Webservice客户端动态调用服务端功能方法
  16. 软件工程第二次作业(JUnit的使用)
  17. 继承Tcalendar控件,让当天日期醒目显示
  18. arguments参数对象
  19. java catch 捕获异常后会产生一个实例对象 该对象能使用父类的方法
  20. 详解SQL Server数据修复命令DBCC的使用

热门文章

  1. quick-cocos2d-x项目《狂点小怪兽》总结
  2. springboot开发之配置自定义的错误界面和错误信息
  3. 外网通过frp进行windows远程文件共享
  4. Web 开发工具类(2): HttpClientUtils
  5. Java 程序是如何执行的
  6. 三、通过 FactoryBean 来配置bean
  7. Servlet乱码问题解决
  8. Codeforces_844
  9. JDK11和JDK8类加载器的区别
  10. 51Nod 1021 石子归并(区间dp经典入门)