程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> oracle強化練習之單行函數

oracle強化練習之單行函數

編輯:Oracle教程

oracle強化練習之單行函數


1. 顯示dname和loc中間用-分隔

Select dname ||’-‘|| loc From dept;

2. 將部門名稱左填充為10位

Select lpad( dname,10) From dept;

3. 將員工名字的‘S’,替換為‘s’

Select replace(ename,’S’,’s’) From emp;

4. 求員工名字的前三位

Select substr(ename,1,3) From emp;

5. 查找員工名字中‘S’第一次出現的位置

Select instr(ename,’S’,1,1) From emp;

6. 查找員工名字中第二次出現‘T’的位置

Select instr(ename,’T’,1,2) From emp;

7. 查找員工名字的長度

Select length(ename) From emp;

8. 顯示一年前的今天日期和一年以後今天的日期

Select add_months(sysdate,-12),add_months(sysdate,12) from emp;

9. 顯示本月第三天的日期

Select sysdate-(to_char(sysdate,’dd’))+3 From dual;

10. 顯示今天到'2012-12-12'相隔的月數

Select months_between(sysdate,’12-12月-2012’) from dual;

11. 顯示員工工資的貨幣表示形式,比如RMB5,000

Select to_char(sal,’$9,999’) From emp;

12. 顯示1949年10月1日的字符串格式,最後顯示結果為1949年10月1日

Select to_char(to_date('1949-10-1','yyyy-mm-dd'),'fmyyyy"年"MM"月"DD"日"') from dual;

1949年10月1日

13. 按照如下要求顯示數據:

sal=800 顯示低工資
sal=3000 正常工資
sal=5000 高工資

select sal,decode(sal,800,'低工資',3000,'正常工資',5000,'高工資') from emp;

14. 顯示以下字段及字符串的連接:"The job id for ",姓名(大寫)," is " ,工作(小寫) 如:The job id for ALLEN is salesman

Select 'The job id for'||ename||' is '||job from emp;

15. 顯示出姓名中最後一個字母為"N"的員工姓名 (使用substr或者instr)

Select ename From emp where substr(ename,-1)=’N’;

16. 查詢參加工作時間在每月15日之後的員工姓名,參加工作時間

Select ename,hiredate From emp whereto_char(hiredate,’DD’)>15;

17. 用"*"的個數表示員工的工資中包含多少"千",如3500,顯示'***',5600,顯示'*****'

Select ename,sal,lpad(‘*’,sal/1000,’*’) From emp;

18. 顯示員工名,參加工作時間,參加工作6個月後的第一個周一

Select ename,hiredate,next_day(add_months(hiredate,6),2) From emp;

19. 顯示員工姓名,月薪,年薪(13個月的月薪+10000元獎金+comm)要求別名為annual_salary,要求所有人的年薪都顯示出來

Select ename,sal,(sal*13+10000+nvl(comm,0)) “annual_salary”Fromemp;

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved