返回列表 回复 发帖

SQL內置函數

select next_day(sysdate,2) from dual;                                         /*NEXT_DAY函數*/
select sysdate from dual                                                      /*顯示系統時間*/   
select to_char(sysdate,'MONTH') from dual;                                    /*顯示當前時間的MONTH*/
select to_char(sysdate,'Month') from dual;            
select to_char(sysdate,'month') from dual;      
select abs(5) from dual;                                                      /*ABS絕對值函數*/
select abs(-5) from dual;
select acos(1) from dual;
select acos(-1) from dual;
select add_months(sysdate,1) from dual;                                       /*ADD_MONTHS函數*/
select add_months(to_date('2006-02-28','YYYY-MM-DD'),2) from dual;
select add_months(to_date('2006-01-30','YYYY-MM-DD'),1) from dual;            /*先將字符串轉換為日期*/
select ADD_MONTHS(TO_DATE('15-11-1961','d-mon-yyyy'),1) from dual;
select to_date('2006-01-30','YYYY-MM-DD') from dual;                          /*to_date日期轉換函數*/
SELECT ASCII('A') FROM DUAL;                                                  /*求字符串的ASCII碼*/
select ascii('ASCII') from dual;                                              /*求字符串的ASCII碼﹐忽略除字符串的首位字符*/
select sin(2) from dual;                                                      /*正弦函數*/
select cos(2) from dual;                                                      /*余弦函數*/
select tan(2) from dual;                                                      /*正切函數*/
select asin(-1),asin(1),ascii(0) from dual;                                   /*反正弦函數*/
select acos(0) from dual;?                                                    /*反余弦函數*/
select atan(-1),atan(1) from dual;                                            /*反正切函數*/
select bfilename(directory,filename) from dual;                               /*返回一指向牮L的物理文件的BFILE地址*/
select ceil(3.14) from dual;                                                  /*ceil函數返回>=參數的最小整數*/
select floor(5.1) from dual;                                                  /*floor函數返回=<參數的最小整數*/
select rowid from dual;                                                       /*返回一個行標識*/
SELECT * From emp
WHERE ROWID=CHARTOROWID('AAAmnZAABAAAU+6AAA');                                /*將一來字符串轉換成rowid類型*/
select chr(65) from dual;                                                     /*求ASCII對應的字符與ASCII(string)函數為互為反函數*/
select concat('my wife',' wangying') from dual;                               /*concat函授將兩個字符串連接起來﹐組合成一個字符串﹐并返回值*/
select CONVERT('Jonathan','WE8EBDIC37C','US7ASCII') from dual;                /*CONVERT函數把一字符串從一個字符轉換到另一字符集*/?
select cos(2.5) from dual;                                              /*cos余弦函數﹐返回一個角度的余弦值*/
select cosh(0) from dual;                                                     /*雙曲余弦函數COSH﹐藀^一角度的雙曲余弦值*/
select decode('abc',null,null,-1) from dual;                                  /*DECODE函數相于一條件語句(IF).它將粹入的數值與函數中參數列表相比較﹐根據輸入值返回一對應值*/
select empty_blob() from dual;                                                /*empty_blob函數返回一空的BLOB指針﹐該指針用在INSERT或UPDATE中﹐以初始化BLOB列項*/
select EMPTY_CLOB() from dual;                                                /*empty_clob函數返回一空的cLOB指針﹐該指針用在INSERT或UPDATE中﹐以初始化cLOB列項*/
select EXP(1) from dual;                                                      /*EXP函數返回e的一個冪*/
select exp(2)  from dual;                                                     /*EXP函數返回e的二次冪*/
select greatest(1,2,-90,55) from dual;                                        /*GREATEST函數返回的是一組數據的最高值*/
select hertorow('ab') from dual;                                              /*HERTOROW函數將由一個由16進制組成的字符串轉換成一個RAW數值*/
select initcap('sunjinhai wangying') from dual;                               /*INITCAP函數接收一字符串﹐并轉換該字符串的單詞﹐以使各個單詞均以大寫字母開頭*/
select instr('AAABDVBBA','B',1,2) from dual                                   /*INSTR函數返回一個字符串是否出現在另一個字符串中﹐1﹐表示開始搜索字符位置﹔2.表示指定試圖搜索的字符位置*/
select instrb('AAABDVBBA','B',1,2) from dual;                                 /*INSTRB函數返回一個字符串是否出現在另一個字符串中﹐1﹐表示開始搜索字符位置﹔2.表示指定試圖搜索的字符位置*/
select last_day(sysdate) from dual;                                           /*LAST_DAY函數返回參數指定日期對應月份的最后一天*/
select last_day(to_date('20060201','YYYYMMDD')) from dual;
select least(1,2,-5,50) from dual;                                            /*LEAST函數返回參數給定的數值列表中*/
select length('AADDAASS') from dual;                                          /*LENGTH函數返回字符串的長度*/
select lengthB('AADDAASS') from dual;                                         /*LENGTH函數返回字符串的長度﹐在多字符集同時使用時會有所區別*/      
select ln(10) from dual;                                                      /*LN函數返回一數值的自然對數*/
select log(10,100) from dual;                                                 /*LOG函數返回一數值的非自然對數*/
select lower('APPLE') from dual;                                              /*LOWER函數返回指定字符串全部小寫*/
select upper('sunjinhai') from dual;                                          /*UPPER函數返回指定字符串全部小寫*/
select lpad('jinhai',7,'sun') from dual;                                      /*LPAD函數返回從左邊填充指定的字符串﹐顯示長度為9個字符串的結果*/
select ltrim('  sunjinhai',' ') from dual;                                    /*LTRIM函數刪除字符串左邊的字符*/
select MOD(2,3) from dual;                                                    /*MOD函數返回一個數除以另一個數的余數*/
select months_between(sysdate,to_date('2006/01/24','YYYY/MM/DD')) from dual;  /*MONYHS_BETWEEN函數返回兩個日期之間的月份*/
select NEW_TIME(date,oldzone,newzone)from dual;                             /*NEW_TIME函數將在時區間轉換日期/時間數據*/
select NEW_TIME(sysdate,'EST','PST')from dual;
select NVL(null,'ddd0') from dual;                                            /*NVL函數需要兩個參數﹐假如一個參數為NULL﹐則返回另一個參數值*/
select POWER(10,2) from dual;                                                 /*POWER函數返回一個數值的指定次冪*/
select RAWTOHEX(raw_value)from dual;                                        /*RAWTOHEX函數將一RAW轉換成16進制字符表示的串值*/
select replace('this is a test','is','was') from dual;                        /*REPLACE函數在一字符串中搜索一指定子串,并將替代成另一指定串*/
select replace('this is a test','is') from dual;
select round(89.985,-2) from dual;                                            /*ROUND函數是四舍五入函數﹐-2表示從小數點的左邊2位*/
SELECT ROWIDTOCHAR(ROWID) FROM dual;                                          /*ROWIDTOCHAR函數將一行標識ROWID轉換為字符串*/
select rpad('sunjin',9,'hai') from dual;                                      /*RPAD函數在字符串的后面追加若干字符*/
select rtrim('sunjinhai','hai') from dual;                                    /*RTRIM函數壓縮掉串右面的尾隨字符,常常是從指定字符串(第一參數)中壓縮空格*/
select sign(-100) from dual;                                                  /*sign函數返回實參的符號﹐對于負數返回-1﹐0返回0﹐正數返回+1*/
select soundex('sunjinhai') from dual;                                        /*SOUNDEX函數1.保留字符串的首個字符﹔2.刪除以下字符﹕a,e,h,i,o,u,w和y;3.首字母后面的任一字母均按如下guize規則匹配于某一個數字:b,f,p,v=1;c,g,j,k,q,s,x,z=2;d,t=3;I=4;m,n=5;r=6*/
select SORT(number from dual;                                                /*SORT函數返回的是number的算朮平方根*/
select substr('sunjinhai',2,5) from dual                                      /*substr函數返回一字符串得指定字串*/
select SUBSTRB('sunjin',1,2) from dual;                                       /*substrb函數返回一字符串得指定字串*/
select to_char(sysdate) from dual;                                            /*to_char函數將日期型或者數值型轉換為字符型數據*/
select to_date('20060101','DDMMYYYY') from dual;                              /*TO_DATE函數將字符型轉換成日期型數據*/
select to_number('100000') from dual;                                         /*to_number函數將字符型轉換成日期型數據*/
select trim(trailing/*leading*//* both*/ ' ' from ' sunai ') from dual;       /*TRIM函數將字符串的前綴(或尾)字符刪除*/
select trunc(56.75,-1) from dual;                                             /*TRUNC函數為指定元素而截去的日期值ORTRUNC函數處理候的數值*/
select uid from dual;                                                         /*UID函數返回一個正數值﹐它是數據庫中唯一的﹐沒有參數*/
select user from dual;                                                        /*user函數返回當前的使用者*/
返回列表