首页 电脑教程 电脑知识 练习ORACLE数据库的题目

练习ORACLE数据库的题目

Jan 23, 2024 pm 09:48 PM
oracle题目

练习ORACLE数据库的题目

练习ORACLE数据库的题目

使用scott/tiger用户下的emp表完成下列练习,表的结构说明如下

emp员工表 字段内容如下:

empno 员工号

ename 员工姓名

job 工作

mgr 上级编号

hiredate 受雇日期

sal 薪金

comm 佣金

deptno 部门编号

1.选择部门30中的所有员工.

2.列出所有办事员(CLERK)的姓名,编号和部门编号.

3.找出佣金高于薪金的员工.

4.找出佣金高于薪金的60%的员工.

5.找出部门10中所有经理(MANAGER)和部门20中所有办事员(CLERK)的详细资料.

6.找出部门10中所有经理(MANAGER),部门20中所有办事员(CLERK),既不是经理又不是办事员但其薪金大于或等于2000的所有员工的详细资料.

7.找出收取佣金的员工的不同工作.

8.找出不收取佣金或收取的佣金低于100的员工.

9.找出各月倒数第3天受雇的所有员工.

10.找出早于12年前受雇的员工.

11.以首字母大写的方式显示所有员工的姓名.

12.显示正好为5个字符的员工的姓名.

13.显示不带有"R"的员工的姓名.

14.显示所有员工姓名的前三个字符.

15.显示所有员工的姓名,用a替换所有"A"

16.显示满10年服务年限的员工的姓名和受雇日期.

17.显示员工的详细资料,按姓名排序.

18.显示员工的姓名和受雇日期,根据其服务年限,将最老的员工排在最前面.

19.显示所有员工的姓名、工作和薪金,按工作的降序排序,若工作相同则按薪金排序.

20.显示所有员工的姓名、加入公司的年份和月份,按受雇日期所在月排序,若月份相同则将最早年份的员工排在最前面.

21.显示在一个月为30天的情况所有员工的日薪金,忽略余数.

22.找出在(任何年份的)2月受聘的所有员工。

23.对于每个员工,显示其加入公司的天数.

24.显示姓名字段的任何位置包含"A"的所有员工的姓名.

25.以年月日的方式显示所有员工的服务年限. (大概)

oracle题目

(1) select deptno from dept where depptno in (select deptno from em);

(2)select empno,ename,sal from em where sal>(select sal from em where ename = 'SMITH');

(3)SELECT e.ename,d.dname from em e,dept d where e.deptno=d.deptno and e.job = 'CLERK';

(4)select empno,ename from em where job in (select job from em where ename = 'SCOTT') ;

(5)select job,min(sal) from em group by job;

(6)select d.dname ,min(e.sal) from dept d,em e

where d.deptno=e.deptno and e.job ='MANAGER' group by d.dname;

Oracle 11G SQL练习作业题

7.select 员工名,工资 from 表 where 工资8.select 员工名,工资 from 表 where 工资>avg(工资) order by 职位;

9.例:t1中列n的数为[2,3];t2中列n的数为[1,2,3,4]

select * from t2 where n >any(select n from t1);结果:3,4.

注:查询表t2中列n的数中有哪些数是比表t1中列n的最大的数[包含max的]。

select * from t2 where n = any(select n from t1);结果:2,3.

select * from t2 where n 10.select * from t2 where n >all(select n from t1);结果:4.

select * from t2 where n 12.SELECT column_name(s) FROM table_name1 UNION SELECT column_name(s) FROM table_name2;合并table_name1、table_name2两个表,没有重复的列。

SELECT column_name(s) FROM table_name1 UNION ALL SELECT column_name(s) FROM table_name2;将table_name1、table_name2两个表的所有数据连接,有重复的。

一道oracle存储过程的题目解

CREATE TABLE SC(

SNO INT,

CNO varchar(10),

GRADE INT

);

INSERT INTO SC VALUES(95001, '数学', 75);

INSERT INTO SC VALUES(95001, '语文', 92);

INSERT INTO SC VALUES(95002, '英语', 64);

INSERT INTO SC VALUES(95002, '英语', 77);

INSERT INTO SC VALUES(95003, '数学', 85);

CREATE TABLE SC_TOTAL(

SNO INT PRIMARY KEY,

"数学" number(5,2),

"语文" number(5,2),

"英语" number(5,2),

"平均分" number(5,2)

);

DECLARE

v_row_count INT;

BEGIN

FOR sc_rec IN (SELECT * FROM SC)

LOOP

-- 判断数据有没有

SELECT COUNT(*) INTO v_row_count

FROM SC_TOTAL

WHERE SNO = sc_rec.SNO;

IF v_row_count = 0 THEN

-- 数据不存在. 先插入.

INSERT INTO SC_TOTAL(SNO) VALUES (sc_rec.SNO);

END IF;

-- 根据课程, 更新 具体的列.

IF sc_rec.CNO = '数学' THEN

UPDATE SC_TOTAL SET "数学" = sc_rec.GRADE WHERE SNO = sc_rec.SNO;

ELSIF sc_rec.CNO = '语文' THEN

UPDATE SC_TOTAL SET "语文" = sc_rec.GRADE WHERE SNO = sc_rec.SNO;

ELSIF sc_rec.CNO = '英语' THEN

UPDATE SC_TOTAL SET "英语" = sc_rec.GRADE WHERE SNO = sc_rec.SNO;

END IF;

-- 计算平均分.

UPDATE SC_TOTAL

SET "平均分" = (NVL("数学",0) + NVL("语文",0) + NVL("英语", 0))

/ (NVL2("数学", 1,0) + NVL2("语文", 1, 0) + NVL2("英语",1, 0))

WHERE SNO = sc_rec.SNO;

END LOOP;

END;

/

-- 数据核对.

SQL>SELECT * FROM SC_TOTAL;

SNO 数学 语文 英语 平均分

---------- ---------- ---------- ---------- ----------

95001 75 92 83.5

95002 77 77

95003 85 85

以上是练习ORACLE数据库的题目的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

<🎜>:泡泡胶模拟器无穷大 - 如何获取和使用皇家钥匙
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系统,解释
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆树的耳语 - 如何解锁抓钩
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1670
14
CakePHP 教程
1428
52
Laravel 教程
1329
25
PHP教程
1274
29
C# 教程
1256
24
FIXDISK Windows 7:检查您的硬盘是否Windows 7中的错误 FIXDISK Windows 7:检查您的硬盘是否Windows 7中的错误 Apr 14, 2025 am 12:40 AM

如果您怀疑自己的硬盘遇到问题,可以检查Windows 7上的错误。此php.cn帖子讨论了FixDisk Windows 7。您可以遵循该指南以检查Windows 7上的错误。

安装图形驱动程序后,努力修复黑屏 安装图形驱动程序后,努力修复黑屏 Apr 15, 2025 am 12:11 AM

在Windows 10/11中安装了像NVIDIA驱动程序这样的图形驱动程序之后,您是否曾经遇到过黑屏?现在,在PHP.CN的这篇文章中,您可以找到一些值得尝试的NVIDIA驱动程序更新黑屏的解决方案。

KB2267602无法安装:这是解决方法! KB2267602无法安装:这是解决方法! Apr 15, 2025 am 12:48 AM

KB2267602是Windows Defender的保护或定义更新,旨在修复Windows中的漏洞和威胁。一些用户报告说他们无法安装KB2267602。这篇来自PHP.CN的帖子介绍了如何修复“ KB2267602 FAI

突袭恢复和硬盘恢复之间的区别 突袭恢复和硬盘恢复之间的区别 Apr 17, 2025 am 12:50 AM

数据恢复始终是一个加热的话题。要成功地从设备恢复数据,您应该知道它如何存储数据。您可以从此PHP.CN帖子中学习RAID恢复和硬盘恢复之间的区别。

如何在Windows中修复文件系统错误(-1073741521)? -  Minitool 如何在Windows中修复文件系统错误(-1073741521)? - Minitool Apr 16, 2025 am 12:37 AM

文件系统错误通常在人们的计算机上发生,并且该错误可能触发一系列链接的故障。 PHP.CN网站上的本文将为您提供针对文件系统错误(-1073741521)的一系列修复程序。请继续

修复安全选项卡未在文件夹属性中显示Windows 11 修复安全选项卡未在文件夹属性中显示Windows 11 Apr 17, 2025 am 12:36 AM

文件属性中的“安全”选项卡有助于将不同组和用户设置为文件或文件夹的不同权限。 一些用户发现文件属性中缺少Windows 11安全选项卡。来自PHP.CN的这篇文章提供了一些修复它的方法。

黑色文件夹背景窗口的社区技巧10/11 黑色文件夹背景窗口的社区技巧10/11 Apr 15, 2025 am 12:40 AM

打开文件资源管理器时,查看黑色文件夹背景10/11?在PHP.CN解决方案的这篇文章中,您将学习一些有用的解决方案,以删除文件夹中的黑色背景。

该文件无法在OneDrive中显示 - 如何解决该文件? 该文件无法在OneDrive中显示 - 如何解决该文件? Apr 18, 2025 am 12:47 AM

访问特定文件夹时,您是否正在努力处理“无法显示该文件”错误?一些用户抱怨这种麻烦并寻找有用的措施。有关该文件的本文无法从php.cn Wil中显示

See all articles