欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
Oracle?第四章

單行函數
一、單行數值函數
1、round:四舍五入。
 格式:round(n1,[n2]):把n1四舍五入到n2位
  Select round(123.456) From emp
  Select round(123.556) From emp
  當n2省略時(shí),四舍五入到整數位。
  Select round(123.456,1) From emp
  Select round(123.446,1) From emp
  Select round(123.446,2) From emp
  當n2為正數時(shí),四舍五入到小數點(diǎn)后的第幾位。
  Select round(123.456,-1) From emp
  Select round(125.456,-1) From emp
  Select round(125.456,-2) From emp
  當n2為負數時(shí),表示從小數點(diǎn)向左數進(jìn)行四舍五入。
  dual:oracle中的一個(gè)虛表。主要用來(lái)返回單行單列的查詢(xún)
  Select round(123.456,1) From dual
2、trunc:截斷
  格式:trunc(n1,[n2])
  Select trunc(123.456) From dual 
  Select trunc(123.556) From dual
  Select trunc(123.556,2) From dual
  Select trunc(123.556,-2) From dual
3、mod:取余
  格式:Mod(n1,n2)
  Select Mod(10,3)From dual 
二、單行字符函數
1、upper:把所有字母轉換成大寫(xiě)
Select upper('abcdafdafafdafda fdafdasf') From dual
2、lower:把所有字母轉換成大寫(xiě)
Select lower('SDfdDfaaffdasfdda fdafdasf') From dual
3、initcap:把首字母轉換成大寫(xiě),其余轉換成小寫(xiě)
Select initcap('SDfdDfaaffdasfdda fdafdasf') From dual
4、concat:字符串連接函數
  格式:concat(s1,s2)
  SELECT concat('abc','def') FROM dual
  SELECT concat(concat('abc','def'),'ghi') FROM dual
5、length:取字符的長(cháng)度 
  格式:length(s1)
  SELECT length('avadafda') FROM dual 
  SELECT length(' avadafda   ') FROM dual 
  SELECT ename,length(ename) FROM emp
6、substr:取子串
 格式:substr(s1,n1,[n2]):取s1中從第n1位開(kāi)始,長(cháng)度為n2的子串。
 SELECT substr('abcdefg',3) FROM dual
 注意:java中第幾位從0開(kāi)始,而oracle中從1開(kāi)始。
 SELECT substr('abcdefg',3,3)  FROM dual
 //查詢(xún)員工表中每個(gè)員工名字的前兩位。
 SELECT ename,substr(ename,1,2) FROM emp
 //查詢(xún)員工表中每個(gè)員工名字的后兩位。
 SELECT ename,substr(ename,length(ename)-1) FROM emp
 //取員工姓名中第三個(gè)字母是A的員工信息
 SELECT * FROM emp WHERE ename LIKE '__A%'
 SELECT * FROM emp WHERE substr(ename,3,1) = 'A'
 SELECT ename,substr(ename,-3) FROM emp
 當n1為負值時(shí),表示從后面第abs(n1)位開(kāi)始數。
7、instr:取子串的位置
  格式:instr(s1,s2, [n1] ,[n2]):取s2在s1中從第n1位開(kāi)始,第n2次出現的位置
  SELECT instr('avadfadfadfad' ,'f',3,2) FROM dual
  當n1,n2省略時(shí),默認為1
  //取員工姓名中第三個(gè)字母是A的員工信息
  SELECT * FROM emp WHERE instr(ename,'A')= 3   X
  SELECT * FROM emp WHERE instr(ename,'A',3,1) = 3 V
   當n1為負值時(shí),表示從后面第abs(n1)位開(kāi)始數。
8、trim:去掉指定字符串兩端指定字符的。
   語(yǔ)法1:TRIM(s1):去空格的
   SELECT length(TRIM('   hel  lo   ')) FROM dual
   中間的去不掉。
   語(yǔ)法2:TRIM(s2 FROM s1) :去掉s1兩端中的s2
   SELECT TRIM('h' FROM 'helloh') FROM dual                                 
9、replace(s1,s2,s3):把s1中的s2用s3替換。
   SELECT REPLACE('hello','e','E') FROM dual  
三、單行日期函數
1、sysdate:取服務(wù)器當前時(shí)間
SELECT SYSDATE FROM dual
2、add_months:在指定的日期上加減多少個(gè)月
格式:add_months(d1,n)
SELECT hiredate,add_months(hiredate,6) FROM emp
SELECT add_months('31-8月-10',1) FROM dual
3、months_between:表示兩個(gè)日期之間間隔多少個(gè)月。
SELECT months_between(SYSDATE,hiredate) FROM emp
SELECT to_date(to_char(SYSDATE,'yyyy-mm-dd'),'yyyy-mm-dd')-hiredate FROM emp
4、last_day:取給定日期所在月份的最后一天的日期
格式:last_day(d1)
SELECT last_day(SYSDATE) FROM dual
SELECT last_day('01-2月-01') FROM dual
5、next_day:取給定日期下一個(gè)指定星期后的日期。
SELECT next_day(SYSDATE,'星期四') FROM dual
SELECT next_day('01-2月-01','星期四') FROM dual
SELECT * FROM nls_session_parameters//查看會(huì )話(huà)中參數。
6、extract:取給定日期中的年或者月或者日
格式:extract(YEAR|MONTH|DAY FROM d1)
SELECT extract(DAY FROM SYSDATE) FROM dual
SELECT extract(DAY FROM to_date('2001-01-01','yyyy-mm-dd')) FROM dual
7、round:對日期進(jìn)行四舍五入。
格式:round(d1,['fmt'])
SELECT round(SYSDATE) FROM dual//當第二個(gè)參數不寫(xiě)時(shí),默認四舍五入到日,看時(shí)間是否超過(guò)中午12:00.
SELECT round(SYSDATE,'MM') FROM dual
SELECT round(SYSDATE,'YY') FROM dual
8、trunc:對日期進(jìn)行截斷
格式:trunc(d1,['fmt'])

練習:
1、計算2000年1月1日到現在有多少月,多少周(四舍五入)。
SELECT round(months_between(SYSDATE,'01-1月-00')),round((SYSDATE - to_date('01-01-00','dd-mm-rr'))/7) FROM dual
2、將員工的參加工作日期按如下格式顯示:月份/年份
SELECT to_char(hiredate,'MM"月"/YY"年"') FROM emp

四、轉換函數
1、to_char:把日期或者數值型數據轉換成字符型
格式:to_char(d1|n1,['fmt'])
當參數1為日期型數據時(shí):fmt可以為
CC:表示世紀
RR:表示兩位年份
YY:表示兩位年份
YYYY:表示4位年份
MM:表示兩位月份
DD:表示兩位日期
HH12:表示12進(jìn)制的小時(shí)
HH24:表示24進(jìn)制的小時(shí)
MI:表示分鐘
SS:表示秒
當參數1為數值型數據時(shí):fmt可以為:
0:表示本身
9:表示任意一個(gè)數值
,:表示千位分隔符
.:表示小樹(shù)點(diǎn)
$:表示美元符號
L:表示本地貨幣符號
SELECT to_char(SYSDATE) FROM dual
SELECT to_char(SYSDATE,'DD/MM') FROM dual
SELECT to_char(SYSDATE,'YYYY-MM-DD HH:MI:SS') FROM dual
SELECT to_char(1234567.789,'L999,999,999,999.999') FROM dual

SELECT * FROM nls_session_parameters
ALTER SESSION SET NLS_CURRENCY='RMB' //修改會(huì )話(huà)的本地貨幣符號
2、to_date:把字符轉換成日期
格式:to_date(s1,'fmt')
fmt參見(jiàn)上面to_char函數說(shuō)明
SELECT to_date('20010101','rrmmddmi') FROM dual
SELECT to_date('20010101','rr') FROM dual
注意:要轉換的字符串一定要和格式碼相匹配
把字符串“2000年/1月-1日”轉換成日期
SELECT to_date('2000年/1月-1日','YYYY"年"/MM"月"-DD"日"') FROM dual
3、to_number:把字符轉換成數字
格式:to_number(s1,'fmt')
fmt參見(jiàn)上面to_char函數說(shuō)明
SELECT to_number('RMB123,456,576.89','L999,999,999.99') FROM dual
SELECT to_number('RMB123,456,5761.89','L999,999,99999.99') FROM dual
注意:當格式碼中的格式比要轉換的長(cháng)或短時(shí),都轉換不成功。

五、通用函數
1、空值處理函數
nvl(參數1,參數2):如果參數1不為null,則函數結果為參數1,否則結果為參數2
SELECT nvl('a','b') FROM dual
SELECT nvl(NULL,'b') FROM dual
//練習:求每個(gè)員工的年收入,年收入等于12*(工資+津貼)
SELECT 12*(sal+nvl(comm,0)) FROM emp
//查詢(xún)每個(gè)員工的經(jīng)理編號,對于沒(méi)有經(jīng)理的員工顯示"無(wú)經(jīng)理"
SELECT nvl(mgr,'無(wú)經(jīng)理') FROM emp   X
注意:nvl函數要求參數1和參數2必須是相同數據類(lèi)型的。
SELECT nvl(to_char(mgr),'無(wú)經(jīng)理') FROM emp  

nvl2(參數1,參數2,參數3):判斷參數1是否為null,如果不是null,返回參數2,否則參數3
//練習:求每個(gè)員工的年收入,年收入等于12*(工資+津貼)
SELECT 12*(sal+nvl2(comm,comm,0)) FROM emp
//查詢(xún)每個(gè)員工的經(jīng)理編號,對于沒(méi)有經(jīng)理的員工顯示"無(wú)經(jīng)理"
SELECT nvl2(mgr,to_char(mgr),'無(wú)經(jīng)理') FROM emp
注意:nvl2函數要求參數2和參數3必須是相同數據類(lèi)型的。

nullif(參數1,參數2):判斷參數1和參數2是否相等,如果相等,返回null,否則返回參數1
SELECT nullif('b','b') FROM dual
COALESCE(參數1,參數2,參數3,.....):返回第一個(gè)不為null的參數
SELECT COALESCE(NULL,NULL,1,2) FROM dual
case表達式
語(yǔ)法結構
CASE 條件表達式
   WHEN 值1 THEN 結果1
   WHEN 值2 THEN 結果2
   ...
   [ELSE 結果n]
END
//查詢(xún)員工的姓名,津貼,300元顯示低,500元顯示還行,1400元顯示高,其他的顯示工作不認真,繼續努力。
SELECT ename,comm, CASE  comm
WHEN 300 THEN '低'
WHEN 500 THEN '還行'
WHEN 1400 THEN '高'
ELSE '工作不認真,繼續努力。'
END
FROM emp

decode(條件表達式,值1,結果1,值2,結果2,.....值n,結果n,結果n+1) :
判斷條件表達式1和哪個(gè)值相匹配,則返回對應的結果,如果沒(méi)有匹配的返回結果n+1
//查詢(xún)員工的姓名,津貼,300元顯示低,500元顯示還行,1400元顯示高,其他的顯示工作不認真,繼續努力。
SELECT ename,comm,decode(comm,300,'低',500 ,'還行',1400,'高','工作不認真,繼續努力。') FROM emp
//練習,計算每個(gè)員工的個(gè)人所得稅。
計算方式:
工資在0-1000元以下的不交稅
在1000-2000的交10%
2000-3000的交15%
3000以上的交20%
trunc(0-1) 0
1.-2   1
2.-3   2
SELECT ename,sal,sal*decode(trunc(sal/1000),0,0,1,0.1,2,0.15,0.2) FROM emp
 

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
ORACLE日期時(shí)間函數大全
oracle教程:PLSQL常用方法匯總
魔樂(lè )科技李興華Oracle教程學(xué)習筆記
十、oracle 常用函數
Oracle筆記(五) 單行函數
ORACLE中函數
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久