今天主要是寫一些常用的函式,就當複習一遍,偶爾還能看一下
1.字元函式
函式名函式功能
例項ascii
返回指定的字元(第乙個字元)對應的十進位制數
select ascii(『hello』) from dual;
chr引數為整數,表示某個字元的unicode碼,返回對應的字元
chr(50403)
initcap
返回字串並將字串的第乙個字母變為大寫,其餘變為小寫
initcap(『hello』)
instr
在乙個字串中搜尋指定的字元,返回發現指定的字元的位置
instr(『hello』,』e』,1,1)[引數3:查詢起始位置。引數4:第幾次出現。3,4都可選]
length
返回字串的長度
length(『hello』)
lower
返回字串。並將所有字元小寫
lower(『hello』)
upper
返回字串。並將所有字元大寫
upper(『hello』)
rpad
在列的右邊貼上字元
rpad(『hello』,10,』汪汪v』)[引數1:原字串;引數2:補充後達到的個數;引數3:補充的字元]
lpad
在列的左邊邊貼上字元
lpad(『hello』,10,』汪汪v』)
ltrim
刪除字元左面的字串
ltrim(『hello』,』h』)[從最左邊開始]
rtrim
刪除字元右面的字串
rtrim(『hello』,』lo』)[結果:he]
trim
刪除字串兩邊的空格,如刪除字串兩邊的空格
trim(』 hello 『)
substr
取子字串
substr(『hello world』,3,5)[引數3可選]
replace
將乙個字串中的子字串替換成其他的字串
replace(『hello world』,』l』,』www』)
concat
連線兩個字串
concat(『3071』,』88888』)
initcap
首字元大寫
initvap(『hello world』)
2、日期函式
函式名函式功能
例項hh
一天的小時數 (01-12)
hh12
一天的小時數 (01-12)
hh24一天的小時數 (00-23)
mi分鐘 (00-59)
ss秒 (00-59)
ms毫秒 (000-999)
us微秒 (000000-999999)
ssss
午夜後的秒 (0-86399)
am 或 a.m. 或 pm 或 p.m.
正午標識(大寫)
am 或 a.m. 或 pm 或 p.m.
正午標識(小寫)
y,yyy
帶逗號的年(4 和更多位)
yyyy
年(4和更多位)
yyy年的後三位
yy年的後兩位
y年的最後一位
sysdate
用來得到系統的當前日期
select sysdate from dual;
add_months
增加或減去月份
add_months(sysdate,2)
last_day
返回日期的最後一天
last_day(to_date(『2017/08』,』yyyy-mm』))[結果:2017/8/31]
months_between(date2,date1)
給出date2和date1相差的月份
next_day(date,』day』)
給出日期date和星期x之後計算下乙個星期的日期
next_day(sysdate,』星期三』)[結果:2017/11/1 22:46:10]
trunc(date,fmt)
按照給出的要求將日期截斷,如果fmt=『mi』表示保留分,截斷秒
trunc(sysdate,』hh』)
months_between
顯示日期相差的月數
months_between(sysdate,add_months(sysdate,2))[結果:-2]
3.轉換函式
函式名返回型別
函式功能
to_char(timestamp,text)
text
把timestamp轉換成string
to_char(int,text)
text
把 int4/int8 轉換成string
to_char(doubleprecision, text)
text
把 real/double precision 轉換成string
to_char(numeric,text)
text
把 numeric轉換成 string
to_date(text,text)
date
把string轉換成date
to_timestamp(text,text)
date
把string轉換成timestamp
to_number(text,text)
numeric
把string轉換成numeric
4.其他函式
函式名函式功能
例項uid
返回標識當前使用者的唯一整數
select uid from dual;[結果:81 此時登入使用者為scott]
user
返回當前使用者的名字
select user from dual;[結果:scott]
nvl(expr1, expr2)
nvl(expr1, expr2)表示如果expr1為null,返回expr2;不為null,返回expr1。注意expr1和expr2兩者的型別要一致
select nvl(comm,100) from emp;
nvl2 (expr1, expr2, xpr3)
expr1不為null,返回expr2;為null,返回expr3。expr2和expr3型別不同的話,expr3會轉換為expr2的型別
nullif (expr1, expr2)
expr1和expr2相等返回null,不等返回expr1
oracle學習(使用了PL SQL) 1
2.1字元型別 1.char 固定長度,最大長度為200位元組.2.varcahr2 動態長度 最大長度為4000位元組 2.2數字型別 1.number 表示整形,使用整形整形最好宣告長度,例如number 3 2.number 浮點型,類似於sql server中的decimal 8,3 這裡一...
Oracle11g安裝後如何使用PL SQL
使用pl sql的方法 1,檢視電腦服務,確保以下倆服務開啟。xlistener 已啟動 oracleserviceorcl 已啟動 2,登入 使用者名稱 scott 密碼 tiger 原因 預設oracle11g的scott不能登陸。3,使用者解鎖 1 以管理員的身份登入資料庫 system sy...
不安裝Oracle客戶端也能使用PL SQL
不安裝oracle,怎麼才能使用pl sql呢?oracle動輒幾百m,在現在的機器配置下,當然空間不是問題,但是有時候,啟動的一些服務帶來不小的效能影響。使用instantclient吧,免安裝,免費,配置簡單,不啟動服務。在資料夾內建立目錄,network admin。如 d instantcl...