Mysql 视图

#视图
/*
含义:虚拟表,和普通的表一样使用
mysql5.1版本出现的新特性,是通过表动态生成的数据
比如:舞蹈班和普通班的对比
*/
create view v1 as 
SELECT stuname,majorname
FROM stuinfo s inner join major m on s.majorid = m.id;

#一 创建视图
/*
语法:
CREATE VIEW 视图名 
AS
查询语句
*/
use myemployees;
#1.查询邮箱中包含a字符的员工名,部门名和工种信息
CREATE VIEW myv1
AS
SELECT last_name,department_name,job_title
FROM employees e
JOIN departments d ON e.department_id = d.department_id
JOIN jobs j ON j.job_id = e.job_id;

select * from myv1;

#二 视图的修改
#方式一
/*
create or replace view 视图名
as
查询语句;
*/
CREATE OR REPLACE VIEW myv1
AS
SELECT avg(salary),job_id
FROM employees
GROUP BY job_id;

#方式二
/*
语法:
alter view 视图名
as
查询语句;
*/
ALTER VIEW myv1
AS 
SELECT * FROM employees;

#三 删除视图

/*
语法:drop view 视图名,视图名,....;
*/

DROP VIEW myv1,myv2,myv3;

#四 查看视图(两种方式)
DESC myv3;
SHOW CREATE VIEW myv1;

 

posted @ 2022-01-10 13:25  donkey8  阅读(26)  评论(0)    收藏  举报