实验四 SQL语言
🕺作者: 主页
我的专栏 C语言从0到1 探秘C++ 数据结构从0到1 探秘Linux 😘欢迎关注:👍点赞🙌收藏✍️留言
🏇码字不易,你的👍点赞🙌收藏❤️关注对我真的很重要,有问题可在评论区提出,感谢阅读!!!
文章目录
- 实验四 SQL语言
- 【实验目的】
- 【实验内容】
- 【实验总结】
实验四 SQL语言
【实验目的】
- 掌握在Oracle中添加示例方案的方法
- 熟练掌握SQL语言的查询功能
- 掌握SQL Plus常用命令
【实验内容】
- 需要访问HR示例方案中的表,先查询机器上是否已有HR方案,如果HR方案,则跳过该步骤。如果没有,则运行相关包和相应配置装入HR方案。
- 下面是没有的情况
- 以sys用户登录后查询Oracle中是否有hr用户,发现没有
SQL> SELECT * FROM dba_tables WHERE OWNER = 'HR';
未选定行
- 即开始创建用户,记得要先把之前的hr用户删除,它被数据库锁定,但是查询却没有找到,不删除之后创建hr方案会报错。

- 登录hr用户

- 完成下面的查询,记录查询命令和结果。
- 查询HR方案种有哪些表,列出表名

- 设置行宽为160,每页行数为40

- 查询employees表中所有薪水在3000到6000元之间的员工编号、姓、名、雇佣日期、工作代号、薪水、经理代号、部门号,按部门号升序排列,同一部门按员工编号降序排列
SELECT employee_id as 员工编号, last_name as 姓, first_name as 名, hire_date as 雇佣日期,
job_id as 工作代号, salary as 薪水, manager_id as 经理代号, department_id as 部门代号
FROM employees
WHERE salary BETWEEN 3000 AND 6000
ORDER BY department_id ASC, employee_id DESC;


- 查询每个部门的人数、平均薪水、最高薪水、最低薪水,按部门编号升序排列
select department_id as 部门编号,count(*) as 人数, avg(salary) as 平均薪水,
max(salary) as 最高薪水,min(salary) as 最低薪水
from employees
group by department_id
order by department_id asc;

- 查询first_name的第三个字母是t的员工编号,first_name,电话号码,部门编号,部门名称
SELECT e.employee_id as 员工编号, e.first_name, e.phone_number as 电话号码,
e.department_id as 部门编号, d.department_name as 部门名称
FROM employees e
JOIN departments d ON e.department_id = d.department_id
WHERE SUBSTR(e.first_name, 3, 1) = 't';


- 在job_history表中查询任职时间超过1年的员工编号,任职历时月份(保留整数),工作代号,部门代号。
SELECT employee_id as 员工编号, MONTHS_BETWEEN(end_date,start_date) AS 任职历时月份,
job_id as 工作代号, department_id as 部门代号
FROM job_history
WHERE MONTHS_BETWEEN(end_date,start_date) > 12;

- 查询每个部门经理的员工编号、姓名、薪水、部门号。
SELECT employee_id as 员工编号, first_name || ' ' || last_name AS 姓名, salary as 薪水, department_id as 部门号
FROM employees
WHERE employee_id IN (SELECT manager_id FROM departments);

【实验总结】
通过本次实验,我顺利达成了以下目标:
- 掌握了在Oracle中添加示例方案的方法,包括创建用户、加载相关包和配置。
- 熟练掌握了SQL语言的查询功能,包括对表进行查询、筛选和排序。
- 掌握了SQL Plus常用命令,例如设置行宽和每页行数的显示格式。
在实际操作中,我完成了对HR示例方案中表的查询,并对员工信息进行了多种复杂的查询操作,包括薪水范围筛选、部门统计、字符串匹配等。通过这些操作,我对SQL语言的灵活运用有了更深入的理解,并且在实践中熟悉了SQL Plus常用命令的使用。
总的来说,通过本次实验,我对SQL语言的查询功能和在Oracle中添加示例方案的方法有了更清晰的认识,并且在实践中提升了自己的操作技能。这些知识和技能对于今后在数据库管理和数据分析方面的工作将会有很大帮助。
相关文章:
实验四 SQL语言
🕺作者: 主页 我的专栏C语言从0到1探秘C数据结构从0到1探秘Linux 😘欢迎关注:👍点赞🙌收藏✍️留言 🏇码字不易,你的👍点赞🙌收藏❤️关注对我真的很重要&…...
2024年简历石沉大海,别投了,软件测试岗位饱和了....
🔥 交流讨论:欢迎加入我们一起学习! 🔥 资源分享:耗时200小时精选的「软件测试」资料包 🔥 教程推荐:火遍全网的《软件测试》教程 📢欢迎点赞 👍 收藏 ⭐留言 …...
JS执行顺序
众所周知,JavaScript 是单线程语言,只能同时执行做一件事(js只有一个线程,称之为main thread-主线程) 1.Javascript 运行机制 main thread 主线程和 call-stack 调用栈(执行栈),所有的任务都会被放到调用栈等待主线程执行。 2.Javascript 任…...
Vscode 上安装 Compilot
GitHub Copilot 是由 OpenAI 和 GitHub 开发的 AI 工具。其目的是通过自动完成代码来帮助开发人员使用集成开发环境 (IDE),如 Visual Studio Code。它目前仅作为技术预览版提供,因此只有已在候补名单上被接受的用户才能访问它。对…...
Spring集成MyBatis与MyBatis-Plus添加分页插件
项目场景: MyBatis使用分页插件PageHelperMyBatis-Plus3.4.0版本之前添加分页插件,使用配置PaginationInterceptor;MyBatis-Plus3.4.0版本添加分页插件,使用配置MybatisPlusInterceptor; 配置示例: 1、My…...
Windows下载安装vcpkg并使用它来安装第三方库(visualstudio)
1.使用Git下载vcpkg仓库(下载比较慢,个人比较喜欢打开下面网址然后用迅雷下载,速度飞快) git clone "https://github.com/Microsoft/vcpkg.git"2.下载好之后解压打开文件夹,双击bootstrap-vcpkg.bat文件&…...
leetcode-2788按分隔符拆分字符串
题目链接 2788. 按分隔符拆分字符串 - 力扣(LeetCode) 解题思路 class Solution:def splitWordsBySeparator(self, words: List[str], separator: str) -> List[str]:result []for i in words:for j in i.split(separator):if j:result.append(j)…...
使用Ctrl+Alt+T快速打开Windows Terminal终端
在Ubuntu中我们通常使用CtrlAltT来快速打开终端,这样即炫酷又方便。然而在Windows并没有默认快捷键打开终端的操作,需要我们折腾一番。操作也不复杂,可以通过一般人都不知道用来干什么的“快捷方式”来实现。 创建Windows Terminal终端的快捷…...
Redis 消息队列和发布订阅
文章目录 基本模式生产者消费者原理&模型redis实现java实现 发布者订阅者原理&模型redis实现java实现 stream模式原理&模型工作原理redis实现Java实现 选型外传 基本模式 采用redis 三种方案: ● 生产者消费者:一个消息只能有一个消费者 ●…...
去掉element-ui的el-table的所有边框+表头+背景颜色
实例: 1.去掉table表头(加上:show-header"false") <el-table:data"tableData":show-header"false"style"width: 100%"> </el-table> 2.去掉table所有边框 ::v-deep .el-table--border th.el-table__cell, ::v-deep .el…...
还在手动复制文章吗?教你如何一键将文章从notion同步到WordPress
本文会给大家介绍如何在WordPress上安装一个插件,实现将notion上写的文章自动同步到WordPress上,从而提高写作效率,接下来请跟随我的脚步一起来操作吧! 一、插件安装 在WordPress后台添加新插件页面中搜索“notion”,…...
uni-app的学习【第三节】
五 运行环境判断与跨端兼容 uniapp为开发者提供了一系列基础组件,类似HTML里的基础标签元素,但uni-app的组件与HTML不同,而是与小程序相同,更适合手机端使用。 虽然不推荐使用 HTML 标签,但实际上如果开发者写了`div`等标签,在编译到非H5平台时也会被编译器转换为 `view`…...
全自动网页制作系统流星全自动网页生成系统重构版输入网页信息即可制作
源码优点: 所有模板经过精心审核与修改,完美兼容小屏手机大屏手机,以及各种平板端、电脑端和360浏览器、谷歌浏览器、火狐浏览器等等各大浏览器显示。 免费制作 为用户使用方便考虑,全自动网页制作系统无需繁琐的注册与登入,直接…...
云轴科技ZStack位列IDC云系统软件市场教育行业TOP2
近日,全球IT市场研究和咨询公司IDC发布 《中国云系统软件市场跟踪报告2023H1》 ZStack作为产品化的云基础软件提供商 位居云系统软件市场第一梯队 市场份额位列独立云厂商*第一 增速最快 教育行业TOP2 在教育行业,云计算已成为教育行业信息化的重要基础…...
从技术大会到面试舞台:程序猿的蜕变之旅!
在这个技术日新月异的时代,程序员们需要不断地学习和提升自己的技能。 参加技术大会,无疑是程序员们拓宽视野、提升技能的重要途径之一。然而,技术大会只是程序员成长的一部分,掌握面试技巧同样至关重要。只有将这两者完美结合&a…...
VS2019+QT5.12.12+opencv+pcl1.12.1 显示点云,运行程序报错-无法定位程序输入点于链接库 如何解决?
之前配置好VS2019QTopencv,做了简单视觉软件,实现了部分功能。昨天下载PCL1.12.1,并参考很多博友的文档配置pcl,编写点云显示代码,程序编译成功,但执行一直报错。 VC目录配置: 添加PCL各个目录下的Lib名…...
Oracle-java下载、开源/商业许可证(收费、免费说明)、版本发布日志
Oracle-java下载、开源/商业许可证(收费、免费说明)、版本发布日志 下载开源/商业许可证(收费、免费说明)java8版本发布日志以上是一般情况,具体的以官网发布信息为准例如: JDK17某些特定版本是免费的&…...
docker安装 mysql 8.0.32
首先下载 mysql 其次如果虚拟机以前安过mysql 需要把mysql关闭 命令 永久关闭mysql 但是当前不生效 需要重启虚拟机 systemctl enable mysqld 如果不想重启虚拟机 可以执行 systemctl stop mysqld //指定版本 docker pull mysql:8.0.32 // 拉取最新的…...
OPC UA 开源库编译方法及通过OPC UA连接西门S7-1200 PLC通信并进行数据交换
前言 在现代工业自动化领域,OPC UA(开放性生产控制和统一架构)是一种广泛应用的通信协议。本文将以通俗易懂的方式解释OPC UA的含义和作用,帮助读者更好地理解这一概念。 一、OPC UA的定义 OPC UA全称为“开放性生产控制和统一…...
【数据库学习】ClickHouse(ck)
1,ClickHouse(CK) 是一个用于联机分析(OLAP)的列式数据库管理系统(DBMS)。 1)特性 按列存储,列越多速度越慢; 按列存储,数据更容易压缩(类型相同、区分度);…...
浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)
✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义(Task Definition&…...
centos 7 部署awstats 网站访问检测
一、基础环境准备(两种安装方式都要做) bash # 安装必要依赖 yum install -y httpd perl mod_perl perl-Time-HiRes perl-DateTime systemctl enable httpd # 设置 Apache 开机自启 systemctl start httpd # 启动 Apache二、安装 AWStats࿰…...
React Native在HarmonyOS 5.0阅读类应用开发中的实践
一、技术选型背景 随着HarmonyOS 5.0对Web兼容层的增强,React Native作为跨平台框架可通过重新编译ArkTS组件实现85%以上的代码复用率。阅读类应用具有UI复杂度低、数据流清晰的特点。 二、核心实现方案 1. 环境配置 (1)使用React Native…...
服务器硬防的应用场景都有哪些?
服务器硬防是指一种通过硬件设备层面的安全措施来防御服务器系统受到网络攻击的方式,避免服务器受到各种恶意攻击和网络威胁,那么,服务器硬防通常都会应用在哪些场景当中呢? 硬防服务器中一般会配备入侵检测系统和预防系统&#x…...
Psychopy音频的使用
Psychopy音频的使用 本文主要解决以下问题: 指定音频引擎与设备;播放音频文件 本文所使用的环境: Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...
ios苹果系统,js 滑动屏幕、锚定无效
现象:window.addEventListener监听touch无效,划不动屏幕,但是代码逻辑都有执行到。 scrollIntoView也无效。 原因:这是因为 iOS 的触摸事件处理机制和 touch-action: none 的设置有关。ios有太多得交互动作,从而会影响…...
laravel8+vue3.0+element-plus搭建方法
创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...
回溯算法学习
一、电话号码的字母组合 import java.util.ArrayList; import java.util.List;import javax.management.loading.PrivateClassLoader;public class letterCombinations {private static final String[] KEYPAD {"", //0"", //1"abc", //2"…...
代码随想录刷题day30
1、零钱兑换II 给你一个整数数组 coins 表示不同面额的硬币,另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额,返回 0 。 假设每一种面额的硬币有无限个。 题目数据保证结果符合 32 位带…...
JVM 内存结构 详解
内存结构 运行时数据区: Java虚拟机在运行Java程序过程中管理的内存区域。 程序计数器: 线程私有,程序控制流的指示器,分支、循环、跳转、异常处理、线程恢复等基础功能都依赖这个计数器完成。 每个线程都有一个程序计数…...
