综合练习(二)
目录
列出薪金比 SMITH 或 ALLEN 多的所有员工的编号、姓名、部门名称、领导姓名、部门人数,以及所在部门的平均工资、最高和最低工资
补充
spool
Oracle从入门到总裁:https://blog.csdn.net/weixin_67859959/article/details/135209645
列出薪金比 SMITH 或 ALLEN 多的所有员工的编号、姓名、部门名称、领导姓名、部门人数,以及所在部门的平均工资、最高和最低工资
确定要使用的数据表
emp 表:员工的编号、姓名
dept 表:部门名称
emp 表:领导姓名
emp 表:统计信息
确定已知的关联字段
员工与部门:emp.deptno=dept.deptno
员工与领导:emp.mgr=memp.empno
第一步:知道 SMITH 或 ALLEN 的薪金,这个查询返回多行单列(WHERE 中使用)。
SQL> select sal2 from emp3 where ename in('SMITH','ALLEN');SAL
----------8001600
第二步:应该比里面的任意一个多即可,但是要去掉这两个员工
由于是多行单列子查询,所以使用 >ANY 完成
SQL> select e.empno,e.ename,e.sal2 from emp e3 where e.sal>any(4 select sal5 from emp6 where ename in('SMITH','ALLEN'))7 and e.ename not in('SMITH','ALLEN');EMPNO ENAME SAL
---------- -------------------- ----------7839 KING 50007902 FORD 30007566 JONES 29757698 BLAKE 28507782 CLARK 24507844 TURNER 15007934 MILLER 13007654 MARTIN 12507521 WARD 12507900 JAMES 950已选择 10 行。
第三步:找到部门名称
SQL> select e.empno,e.ename,e.sal,d.dname2 from emp e,dept d3 where e.sal>any(4 select sal5 from emp6 where ename in('SMITH','ALLEN'))7 and e.ename not in('SMITH','ALLEN')8 and e.deptno=d.deptno;EMPNO ENAME SAL DNAME
---------- -------------------- ---------- ----------------------------7839 KING 5000 ACCOUNTING7902 FORD 3000 RESEARCH7566 JONES 2975 RESEARCH7698 BLAKE 2850 SALES7782 CLARK 2450 ACCOUNTING7844 TURNER 1500 SALES7934 MILLER 1300 ACCOUNTING7521 WARD 1250 SALES7654 MARTIN 1250 SALES7900 JAMES 950 SALES
第四步:找到领导信息
SQL> select e.empno,e.ename,e.sal,d.dname,m.ename2 from emp e,dept d,emp m3 where e.sal>any(4 select sal5 from emp6 where ename in('SMITH','ALLEN'))7 and e.ename not in('SMITH','ALLEN')8 and e.deptno=d.deptno9 and e.mgr=m.empno(+);EMPNO ENAME SAL DNAME ENAME
---------- -------------------- ---------- ---------------------------- --------------------7902 FORD 3000 RESEARCH JONES7844 TURNER 1500 SALES BLAKE7521 WARD 1250 SALES BLAKE7654 MARTIN 1250 SALES BLAKE7900 JAMES 950 SALES BLAKE7934 MILLER 1300 ACCOUNTING CLARK7566 JONES 2975 RESEARCH KING7698 BLAKE 2850 SALES KING7782 CLARK 2450 ACCOUNTING KING7839 KING 5000 ACCOUNTING已选择 10 行。
第五步:得到部门人数,以及部门平均工资、最高和最低工资
整个查询里面不能够直接使用GROUP BY,所以现在应该利用子查询实现统计操作
SQL> select e.empno,e.ename,e.sal,d.dname,m.ename,temp.count,temp.avg,temp.max,temp.min2 from emp e,dept d,emp m,(3 select deptno dno,count(empno) count,avg(sal) avg,max(sal) max,min(sal) min4 from emp5 group by deptno) temp6 where e.sal>any(7 select sal8 from emp9 where ename in('SMITH','ALLEN'))10 and e.ename not in('SMITH','ALLEN')11 and e.deptno=d.deptno12 and e.mgr=m.empno(+)13 and d.deptno=temp.dno;EMPNO ENAME SAL DNAME ENAME COUNT AVG MAX MIN
---------- -------------------- ---------- ---------------------------- -------------------- ---------- ---------- ---------- ----------7902 FORD 3000 RESEARCH JONES 3 2258.33333 3000 8007844 TURNER 1500 SALES BLAKE 6 1566.66667 2850 9507654 MARTIN 1250 SALES BLAKE 6 1566.66667 2850 9507521 WARD 1250 SALES BLAKE 6 1566.66667 2850 9507900 JAMES 950 SALES BLAKE 6 1566.66667 2850 9507934 MILLER 1300 ACCOUNTING CLARK 3 2916.66667 5000 13007566 JONES 2975 RESEARCH KING 3 2258.33333 3000 8007698 BLAKE 2850 SALES KING 6 1566.66667 2850 9507782 CLARK 2450 ACCOUNTING KING 3 2916.66667 5000 13007839 KING 5000 ACCOUNTING 3 2916.66667 5000 1300已选择 10 行。
补充
spool
在数据库实际操作中,需要将查询结果输出到指定文件中,此时可以使用 spool 命令
spool filename [create][replace][append]|OFF|OUT
其中
filename 为输出的文件名称,默认的扩展名为 LST,后面所跟参数作用如下
create 表示创建新的文件,是默认状态
replace 表示替代已经存在的文件
append 表示把查询内容附加到已经存在的文件中
OFF|OUT 表示关闭输出
例如:
下面代码将查询结果输出到 D 盘的 temp.ext 文件中
SQL> spool d:\temp.txt
SQL> select empno,ename,job from emp;EMPNO ENAME JOB
---------- -------------------- ------------------7369 SMITH CLERK7499 ALLEN SALESMAN7521 WARD SALESMAN7566 JONES MANAGER7654 MARTIN SALESMAN7698 BLAKE MANAGER7782 CLARK MANAGER7839 KING PRESIDENT7844 TURNER SALESMAN7900 JAMES CLERK7902 FORD ANALYSTEMPNO ENAME JOB
---------- -------------------- ------------------7934 MILLER CLERK8989 HELLO已选择 13 行。SQL> spool off
此时,我的D盘就有了这个文件,内容如下
相关文章:

综合练习(二)
目录 列出薪金比 SMITH 或 ALLEN 多的所有员工的编号、姓名、部门名称、领导姓名、部门人数,以及所在部门的平均工资、最高和最低工资 补充 spool Oracle从入门到总裁:https://blog.csdn.net/weixin_67859959/article/details/135209645 列出薪金比 SMITH 或 AL…...

sql-labs第46关(order by盲注脚本)
一、环境 网上有自己找 二、解释 order by 注入我们看他的true和false来进行注入出来 二、实操 让我们用sort 看看源码 最终我们的id是放到order by后面了 如果我们直接用列去排序 ?sortusername/password username: password: 可以看到顺序是不…...

13款可以轻松上手画图软件推荐
在当今的数字世界里,我们有各种各样的创作工具,尤其是画图软件。所以问题来了:我们应该如何选择许多免费的绘画软件?为了回答这个问题,我们将在本文中分享10个领先的画图软件。每一个都有其独特的特点和优势࿰…...
vue实现商品评分效果(通过插件实现)
Vue.js 实现了一个简单的商品评分功能。用户可以通过点击星星来修改商品的评分,并且评分显示了相应的星星数。 废话不多说,直接上代码 方法一: <template><div><avue-form :model"formData"><avue-form-it…...

SpringBoot 手写 Starter
spring-boot-starter 模块 1.介绍 SpringBoot中的starter是一种非常重要的机制,能够抛弃以前繁杂的配置,将其统一集成进starter,应用者只需要在maven中引入starter依赖,SpringBoot就能自动扫描到要加载的信息并启动相应的默认配…...
C++ 学习笔记(Structured bindings)
C 学习笔记(Structured bindings) 这个特性是 C17 引入的,个人认为主要是解决如何让函数返回多个值的问题。在这之前,我们一般用 std::pair 或者 std::tuple 来返回多个值。比如下面的例子: std::tuple<int, int …...

K8S常用kubectl命令汇总(持续更新中)
天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。…...
加密和签名的区别及应用场景
原文网址:加密和签名的区别及应用场景_IT利刃出鞘的博客-CSDN博客 简介 本文介绍加密和签名的区别及应用场景。 RSA是一种非对称加密算法, 可生成一对密钥(私钥和公钥)。(RSA可以同时支持加密和签名)。 …...
双非二本找实习前的准备day3
学习目标: 每天2-3到简单sql(刷完即止),每天复习代码随想录上的题目3道算法(时间充足可以继续),背诵的八股的问题也在这里记录了 今日碎碎念: 1)偶尔还是贪玩游戏&…...

又挖到宝了!国人团队研发的AI视频工具PixVerse,这么好用居然还完全免费!(强烈推荐)
昨天发了一款国产免费的 AI 绘画工具 Dreamina 的介绍: 居然才发现!字节跳动旗下国产AI绘画工具Dreamina,这么好用居然还免费!(强烈推荐) 发现大家对国产 AI 工具还挺感兴趣的。今天继续帮大家挖国产的 A…...
勒索病毒普通用户防范建议
勒索病毒普通用户防范建议 定期备份存储在计算机上的数据,这样勒索软件感染不会永远破坏您的个人数据。 最好创建两个备份副本:一个存储在云中(记住使用一个自动备份文件的服务),另一个物理存储(便携式硬…...

Zabbix“专家坐诊”第231期问答
问题一 Q:用docker-compose部署zabbix,部署完后如果要修改zabbix的配置应该要改docker-compose文件里的环境变量吧?改了环境变量之后只能重建容器才能生效吗?能不能在不影响已经配好的那些监控项的情况下让新的环境变量生效&#…...

【.NET Core】深入理解IO - FileSteam流
【.NET Core】深入理解IO - FileSteam流 文章目录 【.NET Core】深入理解IO - FileSteam流一、IO流概述二、文件流FileStream2.1 FileStream概述2.2 FileStream检测流位置更改2.3 FileStream构造函数2.4 FileStream常用属性2.5 FileStream.Read方法2.6 FileStream.Write方法2.7…...
CentOS7 Mysql 忘记密码或临时密码进不去时怎么跳过密码进去然后再更改密码
CentOS7 Mysql 忘记密码或临时密码进不去时怎么跳过密码进去然后再更改密码 1、进文件 vi /etc/my.cnf2、加skip-grant-tables设置跳过密码 在[mysqld]下面加 skip-grant-tables3、mysql -u root -p直接回车无密码进去mysql mysql -u root -p3、先更新,不执行这…...

深度学习 精选笔记(8)梯度消失和梯度爆炸
学习参考: 动手学深度学习2.0Deep-Learning-with-TensorFlow-bookpytorchlightning ①如有冒犯、请联系侵删。 ②已写完的笔记文章会不定时一直修订修改(删、改、增),以达到集多方教程的精华于一文的目的。 ③非常推荐上面(学习参考&#x…...

linux操作docker
docker地址 官方地址 centos7安装docker 卸载旧版本docker sudo //在前面表示以管理员权限操作yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine安装docker //安装所需资…...
k8s Pod 进阶(资源限制,健康检查探针详解,启动退出,pod生命周期,)
目录 资源限制 查看资源控制字段 Pod 资源限制方式 Pod 和容器中定义资源请求和限制的具体字段 CPU资源单位 内存资源单位 示例 健康检查(探针) 探针的三种规则 存活探针(Liveness Probe) 就绪探针(Readines…...
SpringBoot整合ActiveMQ步骤
SpringBoot整合ActiveMQ主要涉及以下几个步骤: 添加依赖:在SpringBoot项目的pom.xml文件中添加ActiveMQ的依赖。 <dependency><groupId>org.apache.activemq</groupId><artifactId>activemq-spring</artifactId><ver…...
MySQL的单表和多表查询
我们在前面曾构建过三个用于实验的表格,下面将基于这三个表进行实践。 # 建立一个用于实验的三个表格 mysql> create table emp (-> empno varchar(10),-> ename varchar(50),-> job varchar(50),-> mgr int,-> hiredate timestamp,-&…...

攻防世界例题wp
1.看到_wakeup()函数第一反应要么触发,要么绕过在这里绕过 2.构造payload实例化一个对象后反序列化 3构造脚本如下: 4.因为它是一个绕过的方法所以我们要使用绕过的方法。 5.继续构造payload将上图的1换成2进行绕过 最终的payload为 O:4:"xctf…...
谷歌浏览器插件
项目中有时候会用到插件 sync-cookie-extension1.0.0:开发环境同步测试 cookie 至 localhost,便于本地请求服务携带 cookie 参考地址:https://juejin.cn/post/7139354571712757767 里面有源码下载下来,加在到扩展即可使用FeHelp…...

7.4.分块查找
一.分块查找的算法思想: 1.实例: 以上述图片的顺序表为例, 该顺序表的数据元素从整体来看是乱序的,但如果把这些数据元素分成一块一块的小区间, 第一个区间[0,1]索引上的数据元素都是小于等于10的, 第二…...
论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一)
宇树机器人多姿态起立控制强化学习框架论文解析 论文解读:交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一) 论文解读:交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化…...
【HTML-16】深入理解HTML中的块元素与行内元素
HTML元素根据其显示特性可以分为两大类:块元素(Block-level Elements)和行内元素(Inline Elements)。理解这两者的区别对于构建良好的网页布局至关重要。本文将全面解析这两种元素的特性、区别以及实际应用场景。 1. 块元素(Block-level Elements) 1.1 基本特性 …...
高防服务器能够抵御哪些网络攻击呢?
高防服务器作为一种有着高度防御能力的服务器,可以帮助网站应对分布式拒绝服务攻击,有效识别和清理一些恶意的网络流量,为用户提供安全且稳定的网络环境,那么,高防服务器一般都可以抵御哪些网络攻击呢?下面…...
JVM暂停(Stop-The-World,STW)的原因分类及对应排查方案
JVM暂停(Stop-The-World,STW)的完整原因分类及对应排查方案,结合JVM运行机制和常见故障场景整理而成: 一、GC相关暂停 1. 安全点(Safepoint)阻塞 现象:JVM暂停但无GC日志,日志显示No GCs detected。原因:JVM等待所有线程进入安全点(如…...

基于单片机的宠物屋智能系统设计与实现(论文+源码)
本设计基于单片机的宠物屋智能系统核心是实现对宠物生活环境及状态的智能管理。系统以单片机为中枢,连接红外测温传感器,可实时精准捕捉宠物体温变化,以便及时发现健康异常;水位检测传感器时刻监测饮用水余量,防止宠物…...

CTF show 数学不及格
拿到题目先查一下壳,看一下信息 发现是一个ELF文件,64位的 用IDA Pro 64 打开这个文件 然后点击F5进行伪代码转换 可以看到有五个if判断,第一个argc ! 5这个判断并没有起太大作用,主要是下面四个if判断 根据题目…...
FTXUI::Dom 模块
DOM 模块定义了分层的 FTXUI::Element 树,可用于构建复杂的终端界面,支持响应终端尺寸变化。 namespace ftxui {...// 定义文档 定义布局盒子 Element document vbox({// 设置文本 设置加粗 设置文本颜色text("The window") | bold | color(…...
虚幻基础:角色旋转
能帮到你的话,就给个赞吧 😘 文章目录 移动组件使用控制器所需旋转:组件 使用 控制器旋转将旋转朝向运动:组件 使用 移动方向旋转 控制器旋转和移动旋转 缺点移动旋转:必须移动才能旋转,不移动不旋转控制器…...