一、涉及內容
1.掌握SELECT 語句的基本語法。
2.掌握常用函數的使用。
二、具體操作
(一)使用Scott方案下的emp表和dept表,完成以下操作:
1.查詢部門編號是20的員工信息。
2.查詢工作為CLERK的員工號、員工名和部門號。
3.查詢獎金COMM高於工資SAL的員工信息。
4.查詢獎金高於工資20%的員工信息。
5.查詢部門編號是10並且工作為MANAGER的員工和部門編號是20並且工作是CLERK的員工信息。
6.查詢工作不是MANAGER和CLERK,並且工資大於或等於2000的員工信息。
7.查詢有獎金的員工信息。
8.查詢所有員工的人數和他們的平均工資。
9.查詢沒有獎金或獎金低於100的員工信息。
10.查詢最近兩年入職的員工信息。
11.查詢工齡大於或等於10年的員工信息。
12.查詢員工信息,要求以首字母大寫的方式顯示所有員工的姓名。
13.查詢員工名正好為6個字母的員工信息。
14.查詢員工名字中不包含字母S的員工。
15.查詢員工姓名的第二個字母為M的員工信息。
16.查詢所有員工姓名的前三個字符。
17.查詢所有員工的姓名,如果包含字母s,則用S替換。
18.查詢員工的姓名和入職日期,並按入職日期從先到后進行排序。
19.顯示所有員工的姓名、工作、工資,按工作降序排序,若工作相同則按工資升序排序。
20.顯示所有員工的姓名、入職的年份和月份,按入職日期所在的月份排序,若月份相同則按入職的年份排序。
21.查詢每個部門中的員工數量、平均工資和平均工作年限。
22.查詢各個部門的人數及平均工資。
23.查詢各個工作的最低工資,並輸出最低工資低於3000的工作名稱。
24.查詢各個部門中不同工種的最高工資。
25.統計各個工種的員工人數與平均工資。
(二)習題
1.select語句
select length(電子郵件)from雇員;
將顯示什么結果?(C)
A.雇員表中最長的電子郵件地址
B.雇員表中每個雇員的電子郵件地址
C.雇員表中“電子郵件”列中的每個值的字符數
D.“電子郵件”列中允許使用最多的字符數
2.若雇員表包含以下列:姓氏varchar2(20)、名字varchar2(20)、聘用日期date、計算月份number(3),那么下列的select語句?
Select聘用日期+計算月份from雇員;
返回的值屬於那種數據類型?(A)
A. date B. number C. datetime D. integer
3.假設有雇員表結構同上,以下哪條sql語句會正確地顯示部門90中所有的雇員的姓氏和聘用的周數?(A)
A.select姓氏,(sysdate-聘用日期)/7as周from雇員where部門標識=90;
B.select姓氏,(sysdate-聘用日期)/7display周from雇員where部門標識=90;
C.select 姓氏,周數 from 雇員 where 部門標識=90;
D.select姓氏,(sysdate-聘用日期)as周from雇員where部門標識=90;
4.假設產品表中包括價格number(7,2)列,對於下面的語句?
Select nvl(10/價格,‘0’)from產品;
如果“價格”列中包含空值,將會出現什么情況?(A)
A.該語句將失敗,因為值不能被0除
B. 將顯示0值
C.將顯示10值
D.該語句將失敗,因為值不能被空值除
5.如果需要從雇員表中查詢部門10(銷售部)中薪金不足25000美元的雇員信息,應執行以下哪個查詢語句才能完成此任務? (C)
A. select 姓氏,名字,薪金from雇員 where 薪金>25000and 部門標識=10;
B. select 姓氏,名字,薪金from雇員 where 薪金=25000and 部門標識=10;
C. select 姓氏,名字,薪金from雇員 where 薪金<25000and 部門標識=10;
D. select 姓氏,名字,薪金from雇員 where 薪金<25000or 部門標識=10;
6.評估以下select語句:
Select min(聘用日期),部門標識from雇員group By部門標識;
將顯示哪個值?(A)
A. 每個部門中最早的聘用日期
B. 雇員表中最早的聘用日期
C. 雇員表中最晚的聘用日期
D. 包含空值的雇員表中的聘用日期
7,以下哪個說法正確的解釋了無法執行以下sql語句的原因? (B)
Select部門標識“部門”,avg(薪金)“平均值” from 雇員group by部門;
A. 無法對薪金求平均值,因為並不是所有的數值都能被平分
B. 不能在group by 字句中使用列別名
C. group by 子句中必須有要分組的內容
D. 部門表中沒有列出部門標識
8.應使用以下哪個統計函數來顯示雇員表中的最高薪金值?(C)
A.avg B.count C.max D.min
9.統計函數將針對()返回一個值,並在計算過程中()空值.(A)
A.行集,忽略 B.每行,忽略 C.行集,包括 D.每行,包括
10.可對數據類型為date的列使用以下哪個統計函數?(B)
A.AVG B.MAX C.STDDEV D.SUM