数据库第六次

视图

salary decimal(10,2) not null default 0 comment ‘工资’,
address varchar(200) not null default ‘’ comment ‘通讯地址’,
dept_id int comment ‘部门编号’
);

create index idx_name on emp(emp_name);
create index idx_birth on emp(birth);
create index idx_deptid_name on emp(dept_id,emp_name);

insert into emp(emp_name,gender,birth,salary,address,dept_id)
values(‘张晓红’,‘女’,‘1980-1-23’,5800,‘河南省郑州市中原路10号’,1),
(‘张静静’,‘女’,‘1987-10-3’,5400,‘河南省新乡市平原路38号’,1),
(‘王云飞’,‘男’,‘1992-11-15’,5600,‘河南省新乡市人民路28号’,1),
(‘王鹏飞’,‘男’,‘1987-10-1’,6800,‘河南省新乡市东明大道12号’,1),
(‘王大鹏’,‘男’,‘1989-2-11’,5900,‘河南省郑州市东风路15号’,1),
(‘王萌萌’,‘女’,‘1986-12-30’,5000,‘河南省开封市五一路14号’,2),
(‘王大光’,‘男’,‘1988-11-8’,6200,‘河南省开封市八一路124号’,2),
(‘王小明’,‘男’,‘1998-1-3’,4800,‘河南省驻马店市雪松路128号’,2),
(‘王娜娜’,‘女’,‘1994-3-5’,5200,‘河南省驻马店市车站路2号’,2),
(‘刘云飞’,‘男’,‘1992-8-13’,6800,‘河南省南阳市民生路255号’,3),
(‘张陆军’,‘男’,‘1991-9-6’,6200,‘河南省南阳市张仲景路14号’,3);

1、创建视图v_emp_dept_id_1,查询销售部门的员工姓名和家庭住址
2、创建视图v_emp_dept,查询销售部门员工姓名和家庭住址及部门名称。
3、创建视图v_dept_emp_count(dept_name,emp_count,avg_salay),统计每个部门人数并计算平均工资。
4、修改视图v_emp_dept,查询销售部门员工姓名、家庭住址、工资和部门名称。
5、查看视图名称;
查看视图结构;
查看创建视图语句;
6、删除以上三个视图

CREATE VIEW v_emp_dept_id__1
    AS
    SELECT emp_name,address FROM emp;
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='销售部';
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;
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
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;
DROP VIEW v_emp_dept_id__1,v_emp_dept,v_dept_emp_count;

存储

创建一个提取emp表所有员工工资和的存储过程s1
调用存储过程s1
创建存储过程s2,实现输入员工姓名后返回员工的家庭住址。
调用存储过程s2
创建一个存储过程avg_sai,有3个参数,分别是dept,gender,接收平均工资,功能查询emp表dept_id为1,gender为男的平均工资
调用存储过程avg_sai
删除以上存储过程

DELIMITER $$
CREATE
    PROCEDURE `nmx`.`s1`()
    BEGIN
    SELECT SUM(salary) FROM emp;
    END$$
DELIMITER ;
call s1();
DELIMITER $$
CREATE
    PROCEDURE `nmx`.`s2`(IN e_name CHAR(20))
    BEGIN
    SELECT address FROM emp WHERE emp_name=e_name;
    END$$
DELIMITER ;
CALL s2('刘云飞');
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 ;
CALL avg_sai(1,'男',@out_salary);
   SELECT @out_salary;
DROP PROCEDURE `nmx`.`s1`;
  DROP PROCEDURE `nmx`.`s2`;
  DROP PROCEDURE `nmx`.`avg_sai`;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/46182.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

鸿蒙开发:Universal Keystore Kit(密钥管理服务)【密钥删除(ArkTS)】

密钥删除(ArkTS) 为保证数据安全性,当不需要使用该密钥时,应该删除密钥。 开发步骤 以删除HKDF256密钥为例。 确定密钥别名keyAlias,密钥别名最大长度为64字节。初始化密钥属性集。用于删除时指定密钥的属性TAG,比如删除的密钥…

【java】力扣 合并k个升序链表

文章目录 题目链接题目描述思路代码 题目链接 23.合并k个升序链表 题目描述 给你一个链表数组,每个链表都已经按升序排列。 请你将所有链表合并到一个升序链表中,返回合并后的链表 思路 我在这个题里面用到了PriorityQueue(优先队列) 的知识 Prio…

顶顶通呼叫中心中间件实现随时启动和停止质检(mod_cti基于FreeSWITCH)

文章目录 前言联系我们拨号方案启动停止ASR执行FreeSWITCH 命令接口启动ASR接口停止ASR接口 通知配置cti.json配置质检结果写入数据库 前言 顶顶通呼叫中心中间件的实时质检功能是由两个模块组成:mod_asr 和 mod_qc。 mod_asr:负责调用ASR将用户们在通…

算法训练营day08 字符串(反转,替换,综合运用(逻辑+反转))

💡 解题思路 📝 确定输入与输出🔍 分析复杂度🔨 复杂题目拆分 :严谨且完整 地拆分为更小的可以解决的子问题(字符的逻辑拆分)–(多总结)💭 选择处理逻辑&…

进程通信(1):无名管道(pipe)

无名管道(pipe)用来具有亲缘关系的进程之间进行单向通信。半双工的通信方式,数据只能单向流动。 管道以字节流的方式通信,数据格式由用户自行定义。 无名管道多用于父子进程间通信,也可用于其他亲缘关系进程间通信。 因为父进程调用fork函…

Git 2.45.2源码安装

环境 Centos 7 安装环境依赖 $ yum install curl-devel gcc-c zlib zlib-devel perl-ExtUtils-MakeMaker package下载git $ wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.45.2.tar.gz $ tar -xzvf git-2.45.2.tar.gz安装git $ cd git-2.45.2 ./…

Docker修改国内镜像源

如果docker已将安装好 参考:https://github.com/cmliu/CF-Workers-docker.io sudo mkdir -p /etc/dockercd /etc/dockersudo vim daemon.json #输入以下内容 { "registry-mirrors": ["https://docker.fxxk.dedyn.io"] } #重启docker服务 su…

开发个人Ollama-Chat--10 绑定域名

开发个人Ollama-Chat–10 绑定域名 域名购买最好找正规的渠道购买,不要因贪图小便宜而多走很多的弯路。我就是第一次购买域名,到了一个坑壁的平台"西部数码",SSL证书申请了2个月,没下来,客服也贼不专业&…

猫头虎:什么是内耗?

猫头虎 🐯 建联猫头虎,商务合作,产品评测,产品推广,个人自媒体创作,超级个体,涨粉秘籍,一起探索编程世界的无限可能! 摘要 内耗是指在工作或学习过程中,个…

视频转文字、语音转文字助手 — 免费、支持多种语言

在快节奏的数字时代,时间就是金钱,效率就是生命。当您的双手被束缚在键盘上,当您需要快速整理会议记录,或是将那些宝贵的音频和视频资料转化为可编辑的文字,「想转就转语音转文字助手」就是您的得力助手! …

突破与创新:Vue.js 创始人 尤雨溪 2024 年度技术前瞻

本文将深入探讨以下主题的 尤雨溪 见解:Vite 5对Vue的影响、宏、vapor模式、常见误解、新特性或功能、未来版本对Option API的支持、VitePress等。 . 2.尤大的问答环节 2.1. Vite 5如何提升Vue的性能? Vite在提高性能方面的工作通常是针对Vite本身的。然…

leetcode日记(37)旋转图像

方法是看评论区想出来的&#xff1a;先将矩阵转置&#xff0c;再将每一行逆转 class Solution { public: int n,m,l,k; struct bian{int u;int v;int d; }; void digui(int loc,int c[],vector<bian> bi,int now,int q,bool colour[],int& maxx,bool jg[]){if(q>…

PyMysql error : Packet Sequence Number Wrong - got 1 expected 0

文章目录 错误一错误原因解决方案 错误二原因解决方案 我自己知道的&#xff0c;这类问题有两类原因&#xff0c;两种解决方案。 错误一 错误原因 pymysql的主进程启动的connect无法给子进程中使用&#xff0c;所以读取大批量数据时最后容易出现了此类问题。 解决方案 换成…

网络协议 — Keepalived 高可用方案

目录 文章目录 目录Keepalived 是实现了 VRRP 协议的软件Keepalived 的软件架构VRRP StackCheckersKeepalived 的配置Global configurationvrrp_scriptVRRP Configurationvrrp synchroization groupvrrp instancevirtual ip addressesvirtual routesLVS Configurationvirtual_s…

偶数位的数c++

题目描述 给你两个整数 l,r&#xff0c;求 l∼r 范围内有多少个位数为偶数的数。 输入 一行两个整数 l,r。 输出 输出位数为偶数的数的数量。 样例输入 5 15样例输出 6 提示 样例解释 10,11,12,13,14,15 位数为偶数&#xff0c;都是两位数。 数据规模与约定 对于 1…

数据结构之线性表表示集合详解与示例(C,C#,C++)

文章目录 基本特征线性表的特点&#xff1a;线性表的表示方法&#xff1a;C、C#和C语言如何实现一个线性表表示集合1. C实现2. C#实现3. C实现 总结 线性表是计算机数据结构中的一个基本概念&#xff0c;它是一种最简单的抽象数据类型。在线性表中&#xff0c;数据元素之间的关…

Qt进阶版五子棋

五子棋是一种两人对弈的棋类游戏&#xff0c;目标是在横、竖、斜任意方向上连成五个子。在Qt中实现五子棋程序&#xff0c;你需要设计棋盘界面、处理下棋逻辑、判断胜负等。以下是实现一个基本五子棋程序的步骤&#xff1a; 创建项目和界面 使用Qt Creator创建一个新的Qt Widge…

academic-homepage:快速搭建个人学术主页,页面内容包括个人简介、教育经历、发布过的学术列表等,同时页面布局兼容移动端。

今天给大家分享GitHub 上一个开源的 GitHub Pages 模板 academic-homepage。 可帮助你快速搭建个人学术主页&#xff0c;页面内容包括个人简介、教育经历、发布过的学术列表等最基本内容&#xff0c;同时页面布局兼容移动端。 相关链接 github.com/luost26/academic-homepage …

Java语言程序设计——篇四(1)

类和对象 面向对象概述面向过程与面向对象面向对象基本概念面向对象的基本特征面向对象的优势及应用 为对象定义类类的修饰符成员变量成员变量-修饰符 构造方法⭐️成员方法成员方法-修饰符例题讲解 ⚠️理解栈和堆 面向对象概述 两种程序设计方法 结构化程序设计&#xff0c…

Linux RTL8111/RTL8168 不能联网 / 最新版驱动下载安装

注&#xff1a; 机翻&#xff0c;未校对。 如何让 Realtek RTL8111/RTL8168 在 Linux 下工作 这篇文章于 2016 年 8 月在我原来的博客上发布。尽管如今 Linux 下的 RTL8111/RTL8168 网络接口的情况变得越来越稳定&#xff0c;但它们仍然会导致数据包丢失或网络连接不稳定等问题…