練習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脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

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

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

如果您懷疑自己的硬盤遇到問題,可以檢查Windows 7上的錯誤。此php.cn帖子討論了FixDisk Windows 7。您可以遵循該指南以檢查Windows 7上的錯誤。

許多Surfacebook用戶報告說,他們符合Windows 11/10上的“由EW_USBCCGPFILTER.SYS阻止的核心隔離”問題。 PHP.CN的這篇文章有助於解決煩人的問題。繼續閱讀。

在Windows 10/11中安裝了像NVIDIA驅動程序這樣的圖形驅動程序之後,您是否曾經遇到過黑屏?現在,在PHP.CN的這篇文章中,您可以找到一些值得嘗試的NVIDIA驅動程序更新黑屏的解決方案。

KB2267602是Windows Defender的保護或定義更新,旨在修復Windows中的漏洞和威脅。一些用戶報告說他們無法安裝KB2267602。這篇來自PHP.CN的帖子介紹瞭如何修復“ KB2267602 FAI

數據恢復始終是一個加熱的話題。要成功地從設備恢復數據,您應該知道它如何存儲數據。您可以從此PHP.CN帖子中學習RAID恢復和硬盤恢復之間的區別。

文件系統錯誤通常在人們的計算機上發生,並且該錯誤可能觸發一系列鏈接的故障。 PHP.CN網站上的本文將為您提供針對文件系統錯誤(-1073741521)的一系列修復程序。請繼續

在團隊或Excel打開文件時,您是否會遭受錯誤消息“此應用程序所選擇的FILETYPE”?現在,請閱讀PHP.CN的這篇文章,以獲取有關此問題的一些有用解決方案。

文件屬性中的“安全”選項卡有助於將不同組和用戶設置為文件或文件夾的不同權限。 一些用戶發現文件屬性中缺少Windows 11安全選項卡。來自PHP.CN的這篇文章提供了一些修復它的方法。
