oracle函数

来源:互联网 发布:nodejs mongodb 知乎 编辑:程序博客网 时间:2024/04/29 03:00

转化字符串的大小写:lower('SQL Course')   sql course

                              upper('SQL Course')   SQL COURSE

                              initcap('SQL Course')  Sql Course

 

lCONCAT(char1,char2):将两个字符串连接在一起 ( || 符号相同)
    CONCAT(Good, String)               结果:GoodString
 
 
lSUBSTR(char , m [,n]) :提取字符串char的子串,m为起始位置,n为子串长度。
    SUBSTR('String',1,3)                  结果: Str
 
lLENGTH(char):返回字符串的长度。
     LENGTH('String')                   结果: 6
 
lINSTR(char1,char2[,n[,m]]):返回子串char2母串char1中的位置。n为起始查找位,m为出现次数。
l
 
 
lLPAD(char1,n,char2) :在字符串1的左端填充字符串2,直到总长度为n
l
 
函数LPAD( char1nchar2 )
l
在字符串char1的左端填冲字符串char2,直到总长度为n
 
 
lTRIM(ch1  from  char2):去除字符串char2首尾的字符ch1 。原义字符串必须使用单引号引起来。
l
 
 
l函数TRIM( 子字符 from 母字符串)
l从母字符串两端截去子字符
 
 
lROUND (column|expression , n) : 四舍五入到小数后第 n 位。
ROUND(45.926, 2) 45.93
 
lTRUNC(column|expression , n): 截取到小数后第 n (后面的舍弃掉)
TRUNC(45.926, 2) 45.92
 
 
lMOD(m,n): m除以n后得到的余数
MOD(1600, 300) 100
 
 
ü
 
lOracle是以一种内部的数值形式存储日期的,即:世纪、年、月、日、小时、分、秒。
l默认的日期形式是: DD-MON-RR.
lSYSDATE 是一个可以返回当前日期和时间的函数
日期的处理:
 
l由于数据库字符集为美国英语,而操作系统是中文的,为了使日期数据正常显示,应首先输入并执行一些命令进行转换:
l
 
Alter session set NLS_DATE_LANGUAGE=‘AMERICAN’;
 
 
 MONTHS_BETWEEN     ü一个日期数据加一定的月份两个日期之间间隔多少个月
ü
ü
NEXT_DAY  某个指定日期之后的某天 üROUND   
ü
LAST_DAY   返回某月的最后一天
 
TRUNC(date[, ‘fmt]):date按照fmt指定的格式进行截取,fmt为可选项,如果没有指定fmt,则默认为DD,将date截取为最近的天.
TRUNC('25-JUL-95','MONTH')  01-JUL-95
 
  üTO_CHAR(date, 'fmt')
TRUNC('25-JUL-95','YEAR')  01-JAN-95 
TO_NUMBER(char[, 'fmt']) 
ü
 
 
lNULL转换为一个实际的值
数据类型可以是date character number
l函数NVL(expr1,expr2)
   expr1非空,则返回expr1
   expr1为空值,则返回expr2
l两个参数的数据类型必须匹配
NVL(comm,0)
NVL(hiredate,'01-JAN-97')
 
 
l使用DECODE函数更便于完成诸如CASE IF-THEN-ELSE 语句的条件查询
 
NVL(job,'No Job Yet')
TO_DATE(char[, 'fmt']) 
DECODE(col/expression, search1, result1
 
               [, search2, result2,...,]
               
               [, default])
 
    
       
ü若列值(或表达式的值)等于search1,则函数返回result1
ü
   
 
 
TRUNC  ü对日期进行截取
ü对日期进行四舍五入 
 
 
TRIM('S' FROM 'SSMITH')               结果: MITH
LPAD(sal,10,'*')                结果: ******5000
INSTR('String', 'r')                 结果: 3