修改视图

#一、创建视图
/*
语法:
create view 视图名
as
查询语句;
*/
USE  myemployees;
#1.查询姓名中包含a字符的员工名、部门名和工种信息
#1.创建
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;
#2.使用
SELECT * FROM myv1
WHERE last_name LIKE '%a%';
#2.查询各部门的平均工资级别 
#1.创建视图查看每个部门的平均工资
CREATE VIEW myv2
AS 
SELECT AVG(salary) ag,department_id
FROM `employees`
GROUP BY department_id;

SELECT * FROM myv2;
#2.使用
SELECT myv2.`ag`,g.grade_level
FROM myv2
JOIN job_grades g
ON myv2.`ag` BETWEEN g.`lowest_sal` AND g.`highest_sal`;

#3.查询平均工资最低的部门信息
#1.创建视图查看每个部门的平均工资
#第二题已经有了该视图
#2.使用
SELECT MIN(myv2.`ag`),*
FROM  myv2
JOIN `departments` d
ON myv2.`department_id`=d.`department_id`;
#正解
SELECT * FROM myv2
ORDER BY ag
LIMIT 1;


#4.查询平均工资最低的部门名和工资
CREATE VIEW myv3
AS
SELECT * FROM myv2 
ORDER BY ag
LIMIT 1; 
SELECT d.*,m.ag
FROM myv3 m
JOIN  departments d
ON m.department_id=d.`department_id`;
#二、视图的修改
#方式一:
 /*
 CREATE or replace view 视图名
 as
 查询语句;


*/
SELECT * FROM myv3;
CREATE OR REPLACE VIEW myv3
AS
SELECT AVG(salary),job_id
FROM employees
GROUP BY job_id;
#方式二:
/*
语法:
alter view 视图名
as
查询语句;

*/
ALTER VIEW myv3
AS
SELECT * FROM employees;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值