Oracle的sql語(yǔ)句練習(xí)題含答案_第1頁(yè)
Oracle的sql語(yǔ)句練習(xí)題含答案_第2頁(yè)
Oracle的sql語(yǔ)句練習(xí)題含答案_第3頁(yè)
Oracle的sql語(yǔ)句練習(xí)題含答案_第4頁(yè)
Oracle的sql語(yǔ)句練習(xí)題含答案_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Oracle 的 sql 語(yǔ)句練習(xí)題含答案(二) Oracle_SQL 練習(xí)題 11選擇部門(mén) 30 中的所有員工2. 列出所有辦事員(CLERK)的姓名,編號(hào)和部門(mén)編號(hào).3.找出傭金高于薪金的員工.4找出傭金高于薪金的60%的員工.5.找出部門(mén) 10 中所有經(jīng)理(MANAGER)和部門(mén) 20 中所有辦事員(CLERK)的詳細(xì)資料.6.找出部門(mén) 10 中所有經(jīng)理(MANAGER),部門(mén) 20 中所有辦事員(CLERK),既不是經(jīng)理又不是辦事員但其薪金 大于或等于 2000 的所有員工的詳細(xì)資料.7.找出收取傭金的員工的不同工作.8.找出不收取傭金或收取的傭金低于 100 的員工.9. 找出各月倒

2、數(shù)第 3 天受雇的所有員工.10. 找出早于 12 年前受雇的員工.11. 以首字母大寫(xiě)的方式顯示所有員工的姓名.12. 顯示正好為 5 個(gè)字符的員工的姓名.13. 顯示不帶有R的員工的姓名.14. 顯示所有員工姓名的前三個(gè)字符.15. 顯示所有員工的姓名,用 a 替換所有A16. 顯示滿 10 年服務(wù)年限的員工的姓名和受雇日期.17. 顯示員工的詳細(xì)資料,按姓名排序.18. 顯示員工的姓名和受雇日期,根據(jù)其服務(wù)年限,將最老的員工排在最前面.19. 顯示所有員工的姓名、工作和薪金,按工作的降序排序,若工作相同則按薪金排序.20. 顯示所有員工的姓名、加入公司的年份和月份,按受雇日期所在月排序,

3、若月份相同則將最早年份的員工排在最前面.21. 顯示在一個(gè)月為 30 天的情況所有員工的日薪金,忽略余數(shù).22. 找出在(任何年份的)2 月受聘的所有員工。23. 對(duì)于每個(gè)員工,顯示其加入公司的天數(shù).24. 顯示姓名字段的任何位置包含A的所有員工的姓名.25. 以年月日的方式顯示所有員工的服務(wù)年限.答案:1. select en ame,job,mgr,hiredate,sal,comm,dept no from empwhere dept no=30;2. select en ame,emp no,dept no from emp where job=CLERK;3. select *fro

4、m emp where commsal;4. select *from empwhere commsal*0.6;5. select emp no,en ame,job,hiredate,sal,comm,dept nofrom empwhere( job=MANAGER and dept no=10)or( job=CLERK and dept no=20);6. select emp no,en ame,job,hiredate,sal,dept nofrom empwhere ( job=MANAGER and dept no =10)or( job=CLERK and dept no=

5、20)or(job oMANAGER and jobCLERK) and sal=2000);7. select dist inct en ame,job,commfrom empwhere NVL(comm,0)0;注意如果像上面這樣寫(xiě),就job en ame comm 3個(gè)同時(shí)不同的都列出來(lái)正確的是:select dist inct jobfrom empwhere NVL(comm,0)0;8. select en ame,comm.from emp where NVL(comm,0)=0or NVL(comm,0)100;如果按上面的寫(xiě)法就重復(fù)了,直接可以寫(xiě)成select en ame

6、,commfrom empwhere NVL(comm,0)1211. select in itcap(e name) n ame ,job, hiredatefrom emp;12.select en ame,job,hiredatefrom emp where len gth(e name)=5;13 select en ame, job from empwhere en ame not like %R%;14.select substr(e name, 1,3) n ame,job,hiredatefrom emp ;15select replace(e name, A,a) n ame

7、,job,hiredatefrom emp;16select en ame, job, hiredatefrom empwhere mon ths_betwee n( sysdate,hiredate)/12=10;17. select * from emporder by en ame;18. select en ame, hiredatefrom emp order by hiredate desc;19. select en ame,job, salfrom emp order by job desc, sal asc;20. select en ame, to_char(hiredat

8、e,yyyy) year, to_char(hiredate,mm) mon thsfrom emporder by mon ths, year asc;21. select en ame, sal/30 dailysalfrom emp;22.select en ame, hiredatefrom empwhere to_char(hiredate,mm)=02;23. select en ame,sysdate-hiredate天數(shù) from emp;24. select en ame from emp where in str(e name,A,1)0;25. select en ame

9、, to_char(hiredate,yyyy/mm/dd)from emp ;-26.列出至少有一個(gè)員工的所有部門(mén).select dn ame from emp,dept where emp.dept no=dept.dept no group by dn ame;select disti net dn ame from emp,dept where emp.dept no=dept.dept no;-說(shuō)明:(1) select 中出現(xiàn)的字段一定要出現(xiàn)在group by 中;-(2)如果 select 中出現(xiàn)的字段不出現(xiàn)在group by 中,則一定要出現(xiàn)在select 的聚合函數(shù)中,對(duì)于想

10、出現(xiàn)的字段,可用 max()或 min()。-(3 )默認(rèn)的情況是按 group by 中的字段來(lái)排序,如果要用order by 來(lái)自己排序,貝 U order by 后的字段- -定是 group by 后的字段,不能是聚合函數(shù)的字段-27.列出薪金比“SMITH 多的所有員工.select en ame, sal from emp where sal (select sal from emp where upper(e name)=SMITH);-28.列出所有員工的姓名及其直接上級(jí)的姓名select a.e name, b.e name mgrn ame from emp a,emp b

11、 where a.mgr = b.emp no;-29.列出受雇日期早于其直接上級(jí)的所有員工select e.e name, m.e name from emp e, emp m where e.mgr=m.emp no and (e.hiredate 1500;-33.列出在部門(mén)“SALES (銷(xiāo)售部)工作的員工的姓名,假定不知道銷(xiāo)售部的部門(mén)編號(hào)select en ame from emp, dept where emp.dept no = dept.dept no and dn ame = SALES;-34.列出薪金高于公司平均薪金的所有員工select en ame, sal from

12、 emp where sal (select avg(sal) from emp);-35.列出與“SCOTT 從事相同工作的所有員工-SCOTT 從事一種工作select en ame from emp where job = (select job from emp where upper(e name) = SCOTT);-SCOTT 從事多種工作select en ame, job from emp where job in (select job from emp where upper(e name) = SCOTT);-36.列出薪金等于部門(mén)30 中員工的薪金的所有員工的姓名和薪

13、金select en ame, sal from emp where sal in( select sal from emp where dept no = 30);-37.列出薪金高于在部門(mén)30 工作的所有員工的薪金的員工姓名和薪金select en ame, sal from emp where sal (select max(sal) from emp where dept no = 30);-38.列出在每個(gè)部門(mén)工作的員工數(shù)量、平均工資和平均服務(wù)期限select dept no 部 門(mén) 號(hào),cou nt(e name)員 工數(shù)量, avg(sal + nvl(comm, 0) 平 均工

14、資, trunc(avg(sysdate-hiredate)平均服務(wù)期限(天)from emp group by dept no;-39.列出所有員工的姓名、部門(mén)名稱(chēng)和工資select en ame, dn ame, sal+nvl(comm,0) from emp, dept where emp.dept no = dept.dept no;-40.列出從事同一種工作但屬于不同部門(mén)的員工的一種組合select disti net e.dept no, e.job from emp e, emp m where e.dept no != m.dept no and e.job = m.job

15、order by e.job;-41.列出所有部門(mén)的詳細(xì)信息和部門(mén)人數(shù)select dept.*, (select coun t(e name) from emp where emp.dept no (+)=dept.dept no)人數(shù) from dept;-42.列出各種工作的最低工資select job, min(sal + nvl(comm, 0)最低工資 from emp group by job;-43.列出各個(gè)部門(mén)的 MANAGER (經(jīng)理)的最低薪金select min (sal + n vl(comm,0) from emp where upper(job) = MANAGE

16、R group by dept no;-顯示部門(mén)名稱(chēng)select dn ame, min( sal + n vl(comm,0) from emp, dept where emp.dept no = dept.dept no and upper(job) = MANAGER group by dn ame;-44.列出所有員工的年工資,按年薪從低到高排序select ename, to_char(sal+nvl(comm,0)*12, 9999,9999.00)年工資 ” from emp order by 2;-45.顯示各部門(mén)員工薪金最高的前2 名select * from (select

17、 en ame, dept no, sal, row_ nu mber() over(partiti on by dept no order by sal desc)r from emp ) where r =2-46.顯示薪金最高的3 位員工select * from (select en ame, sal,de nse_ra nk() over(order by sal desc) r from emp) where r (select avg(sal) from emp p where e.dept n o=p.dept no);-52.給所有10部門(mén)的經(jīng)理(MANAGER )和20部門(mén)

18、的職員(CLERK), 增加薪金10%。 update emp set sal=sal*(1+0.1) where(dept no=10 and upper(job)=MANAGER) or(dept no=20 and upper(job)=CLERK);-53.刪除 DEPT 中沒(méi)有員工的部門(mén)。delete from dept where dept no not in( select disti net dept no from emp);-54.刪除雇傭年限低于20 年的員工。delete from emp where trun c(sysdate-hiredate) 2850;wher

19、e4.查詢(xún)工資不在 1500 到 2850 之間的所有雇員姓名和工資。select en ame, sal from emp where sal not betwee n 1500 and 2850;5.查詢(xún) 10 號(hào)部門(mén)和 30 號(hào)部門(mén)工資超過(guò) 1500 的雇員姓名和工資。select en ame, sal from emp where sal (select avg(sal) from emp);19.查詢(xún)工資、獎(jiǎng)金與 SCOTT 完全相同的所有員工的姓名、工資和獎(jiǎng)金。select en ame,sal, comm from emp where (sal, nvl(comm,-1) in

20、 (select sal, nvl(comm,-1) from emp whereen ame=SCOTT);20.查詢(xún) 81 年入職的員工select * from emp where to_char(hiredate, yy)= 81;21.按年月日查詢(xún)員工信息select to_char(hiredate, yyyy-mm-dd )from emp;22.向 DEPT 表中插入一條數(shù)據(jù),要求:部門(mén)號(hào)為50,部門(mén)名稱(chēng)為 ADMINISTRATOR ,部門(mén)位置為BOSTON 。In sert into dept values(50, ADMINISTRATOR,BOSTON);23.向 EM

21、P 表中插入一條數(shù)據(jù),要求:?jiǎn)T工號(hào)為2000,姓名為 JOHN,工資為 1000,入職時(shí)間為 2003年 4 月 7 日部門(mén)號(hào)為 30 號(hào)。In sert into emp (emp no,e name,sal,hiredate,dept no)values(2000, JOHN,1000,07-4 月-03,30);24.給 10 號(hào)部門(mén)的每個(gè)雇員增加10%的工資。然后提交事務(wù)。Update emp set sal=sal*1.1 where dept no=10;commit25.刪除 50 號(hào)部門(mén)。然后回滾事務(wù)。Delete from dept where dept no=50;Rollback;新建一張學(xué)員信息表(student),要求:1. 字段如下:學(xué)號(hào)(sid),姓名(name),性別(sex),年齡(age),地址(address).2. 分別為字段添加約束:學(xué)號(hào)為主鍵,姓名為非空,性別為檢查約束,年齡為檢查約束,地址為默認(rèn)約束.3. 為表建立自增值(sid ),建議初始值從為1001,增量為 1.4. 插入記錄.新建一張課程表(course),要求:1. 字段如下

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論