练习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中文网其他相关文章!

热AI工具

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

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

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

Windows设置中的驱动器健康警告是什么意思?收到磁盘警告时该怎么办?阅读本php.cn教程以获取逐步说明以应对这种情况。

文章讨论了编辑Windows注册表,预防措施,备份方法以及不正确的编辑中的潜在问题。主要问题:系统不稳定和数据丢失的风险不当变化。

蒸汽云错误可能是由于许多原因引起的。要顺利玩游戏,您需要采取一些措施来删除此错误,然后才能启动游戏。 PHP.CN软件在这篇文章中介绍了一些最佳方法以及更多有用的信息。

您可能会看到“无法建立与Windows Metadata和Internet Services(WMI)的连接”。事件查看器的错误。 PHP.CN的这篇文章介绍了如何删除Windows元数据和Internet服务问题。

KB5035942更新问题 - 用户通常发生崩溃系统。受到的人们希望找到摆脱困境的出路,例如崩溃系统,安装或声音问题。针对这些情况,这篇文章由Php.cn Wil发表

本文介绍了如何在Windows中使用组策略编辑器(GPEDIT.MSC)来管理系统设置,突出显示常见的配置和故障排除方法。它指出gpedit.msc在Windows Home Edition中不可用,建议
