首頁 電腦教學 電腦知識 練習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 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 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教學
1665
14
CakePHP 教程
1424
52
Laravel 教程
1321
25
PHP教程
1269
29
C# 教程
1249
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上的錯誤。

核心隔離是否被ew_usbccgpfilter.sys阻止?這是修復程序! 核心隔離是否被ew_usbccgpfilter.sys阻止?這是修復程序! Apr 13, 2025 am 12:47 AM

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

安裝圖形驅動程序後,努力修復黑屏 安裝圖形驅動程序後,努力修復黑屏 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)的一系列修復程序。請繼續

如何修復此應用程序不支持選擇的FILETYPE 如何修復此應用程序不支持選擇的FILETYPE Apr 13, 2025 am 12:41 AM

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

修復安全選項卡未在文件夾屬性中顯示Windows 11 修復安全選項卡未在文件夾屬性中顯示Windows 11 Apr 17, 2025 am 12:36 AM

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

See all articles