第六次作业

一、视图作业

1、CREATE VIEW v_emp_dept_id__1
	AS
	SELECT emp_name,address FROM emp;
2、CREATE VIEW v_emp_dept
	AS
	SELECT emp_name,address,dept_name FROM emp e,dept d
	WHERE e.dept_id=d.dept_id
	AND dept_name='销售部';
3、CREATE VIEW v_dept_emp_count(dept_name,emp_count,avg_salay)
	AS
	SELECT COUNT(emp_id),AVG(salary),dept_name FROM emp e,dept d
	WHERE e.dept_id=d.dept_id
	GROUP BY dept_name;
4、ALTER VIEW v_emp_dept
	AS 
	SELECT emp_name,address,salary,dept_name FROM emp e,dept d
	WHERE e.dept_id=d.dept_id
5、SHOW FULL TABLES;
   DESC v_emp_dept_id__1;
   DESC v_emp_dept;
   DESC v_dept_emp_count;
   SHOW CREATE VIEW v_emp_dept_id__1;
   SHOW CREATE VIEW v_emp_dept;
   SHOW CREATE VIEW v_dept_emp_count;
6、DROP VIEW v_emp_dept_id__1,v_emp_dept,v_dept_emp_count;

二、存储过程作业

1、DELIMITER $$
CREATE
    PROCEDURE `nmx`.`s1`()
    BEGIN
	SELECT SUM(salary) FROM emp;
    END$$
DELIMITER ;
2、call s1();
3、DELIMITER $$
CREATE
    PROCEDURE `nmx`.`s2`(IN e_name CHAR(20))
    BEGIN
	SELECT address FROM emp WHERE emp_name=e_name;
    END$$
DELIMITER ;
4、CALL s2('刘云飞');
5、DELIMITER $$
CREATE
    PROCEDURE `nmx`.`avg_sai`(IN d INT,IN g CHAR(2),OUT out_salary INT )
    BEGIN
	SELECT AVG(salary) INTO out_salary FROM emp WHERE dept_id=d AND gender=g;
    END$$
DELIMITER ;
6、CALL avg_sai(1,'男',@out_salary);
   SELECT @out_salary;
7、DROP PROCEDURE `nmx`.`s1`;
  DROP PROCEDURE `nmx`.`s2`;
  DROP PROCEDURE `nmx`.`avg_sai`;
相关推荐
u0133087094 分钟前
大模型训练数据库Common Crawl
数据库·语言模型
杨浦老苏15 分钟前
跨平台数据库管理软件SQLynx
数据库·docker·群晖
Flying_Fish_roe15 分钟前
Java中NoSQL 与分布式数据库
java·数据库·nosql
草木·君24 分钟前
【SQL】百题计划:SQL排序Order by的使用。
数据库·sql
小时候的阳光30 分钟前
Docker方式部署ProxySQL和Keepalived组合实现MGR的高可用访问
mysql·docker·keepalived·mgr·proxysql
好奇的菜鸟1 小时前
GORM安全-保护你的应用免受SQL注入攻击
数据库·sql·安全
机智的小神仙儿1 小时前
我是Redis,请看我和mysql是如何交互的吧~
redis·mysql·缓存·交互
程序员大金2 小时前
基于SpringBoot+Vue+MySQL的垃圾分类回收管理系统
java·vue.js·spring boot·后端·mysql·mybatis
盒马盒马2 小时前
MySQL:事务
数据库·mysql
insid1out2 小时前
python 连接 oracle 报错
数据库·oracle