Oracle的函数大全
生活随笔
收集整理的這篇文章主要介紹了
Oracle的函数大全
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
作者:IT邦德
中國DBA聯盟(ACDU)成員,目前從事DBA及程序編程
(Web\java\Python)工作,主要服務于生產制造
現擁有 Oracle 11g OCP/OCM、
Mysql、Oceanbase(OBCA)認證
分布式TBase\TDSQL數據庫、國產達夢數據庫以及紅帽子認證
從業8年DBA工作,在數據庫領域有豐富的經驗
B站主播Oracle、Mysql、PG實戰課程,請搜索:jeames007擅長Oracle數據庫運維開發,備份恢復,安裝遷移,性能優化、故障應急處理等。
文章目錄
- 前言
- 1.字符函數
- 2、數學函數
- 3、日期函數
- 5、系統函數
前言
本文匯總了Oracle常用的函數大全,大家多點贊關注!1.字符函數
1.1、問題:將所有員工的名字按小寫的方式顯示 SQL> select lower(ename) from emp; 1.2、問題:將所有員工的名字按大寫的方式顯示。 SQL> select upper(ename) from emp; 1.3、問題:顯示正好為5個字符的員工的信息。 SQL> select * from emp where length(ename)=5; 1.4、問題:顯示所有員工姓名的前三個字符。 SQL> select substr(ename,1,3) from emp; 1.5、問題:以首字母大寫,后面小寫的方式顯示所有員工的姓名。 SQL>select upper(substr(ename,1,1))||lower(substr(ename,2,length(ename)-1)) from emp; 1.6、問題:顯示所有員工的姓名,用“我是老虎”替換所有“A” SQL> select replace(ename,'A', '我是老虎') from emp;2、數學函數
2.1、問題:顯示在一個月為30天的情況下,所有員工的日薪金,忽略余數。 SQL> select trunc(sal/30), ename from emp; or SQL> select floor(sal/30), ename from emp; 2.2、 在做oracle測試的時候,可以使用dual表 SQL> select mod(10,2) from dual;結果是0 SQL> select mod(10,3) from dual;結果是1 2.3、其它的數學函數 abs(n): 返回數字n的絕對值 acos(n): 返回數字的反余弦值 exp(n): 返回e的n次冪 power(m,n): 返回m的n次冪3、日期函數
默認情況下日期格式是dd-mon-yy 即12-7月-78 3.1、問題:查找已經入職8個月多的員工 SQL> select * from emp where sysdate>=add_months(hiredate,8); //sysdate: 該函數返回系統時間 //add_months(d,n):時間點d再加上n個月 3.2、問題:對于每個員工,顯示其加入公司的天數。 SQL> select floor(sysdate-hiredate) "入職天數",ename from emp; or SQL> select trunc(sysdate-hiredate) "入職天數",ename from emp; 3.3、問題:找出各月倒數第3天受雇的所有員工。 SQL> select hiredate,ename from emp where last_day(hiredate)-2=hiredate; // last_day(d):返回指定日期所在月份的最后一天4.轉換函數
4.1、問題:日期是否可以顯示 時/分/秒 SQL> select ename, to_char(hiredate,’yyyy-mm-dd hh24:mi:ss’) from emp; yy:兩位數字的年份 2004-->04 yyyy:四位數字的年份 2004年 mm:兩位數字的月份 8月-->08 dd:兩位數字的天 30號-->30 hh24: 8點-->20 hh12:8點-->08 mi、ss-->顯示分鐘\秒 4.2、問題:顯示薪水的時候,把本地貨幣單位加在前面 SQL>select ename, to_char(hiredate, 'yyyy-mm-dd hh24:mi:ss'), to_char(sal,'L99999.99') from emp; 4.3、問題:顯示1980年入職的所有員工 SQL> select * from emp where to_char(hiredate, 'yyyy')=1980; 4.4、問題:顯示所有12月份入職的員工 SQL> select * from emp where to_char(hiredate, 'mm')=12; 4.5、to_date //函數to_date用于將字符串轉換成date類型的數據SQL>insert into emp values (9998, to_date('1988-12- 12', 'yyyy-mm-dd'));5、系統函數
//sys_context('USERENV','lanuage')-- USERENV是固定的,不能改的,lanuage可以換成其它 1)terminal:當前會話客戶所對應的終端的標示符(本地客戶端的計算機名稱) 2)lanuage: 語言 3)db_name: 當前數據庫名稱 4)nls_date_format: 當前會話客戶所對應的日期格式 5)current_schema: 當前會話客戶所對應的默認方案名 6)host: 返回數據庫所在主機的名稱 (本地客戶端的工作組/計算機名稱) 注:返回oracle服務器的IP地址及服務器名稱 SQL>select utl_inaddr.get_host_address,utl_inaddr.get_host_name from dual;如果覺得文章對你有幫助,點贊、收藏、關注、評論,一鍵四連支持
您的批評指正是我寫作的最大動力!
?? 技術交流可以 關注公眾號:IT邦德 ??
總結
以上是生活随笔為你收集整理的Oracle的函数大全的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: firefox下可恶的value
- 下一篇: TD商用将迈重要一步 六大运营商年底建网