oracle汇总明细函数,oracle 常用函数汇总

字符串处理

LENGTH : 计算计算字符串的长度 ,LENGTH(column)

LOWER/UPPER : 将字符全部变成小写或者大写

SUBSTR(string,start,count) :字符串截取 substr(13088888888,3,8)= 08888888

REPLACE(string,s1,s2) :  字符串替换 replace('he love you','he','i')=i love you

CONCAT(strexp, strexp):  连接两个字符串   concat(first_name,last_name)

Trim():截取字符串两端特殊字符  trim('   ddd    ')

数字处理

FLOOR(n): 取整 floor(2345.67)=2345

ROUND( number, 小数位数 ):四舍五入   ROUND(45.926, 2)=45.93

TRUNC( number, 小数位数 ):小数位数以外的全部舍去 TRUNC(45.926, 2)= 45.92

MOD( n1, n2 ): 取余 相当于 n1 % n2    MOD(10, 3)=1

to_number: 把字符转换成数字

逻辑函数

nvl(ex1,ex2) :

ex1值为空则返回ex2,否则返回该值本身ex1  nvl(comm,0)

nullif(ex1,ex2):

值相等返空,否则返回第一个值

nvl2(ex1,ex2,ex3):

如果ex1不为空,显示ex2,否则显示ex3

coalesce(ex1,ex2,....) :

返回列表中第一个非空表达式 在查询时多列选一的时候用处比较大

sign()

函数根据某个值是0、正数还是负数,分别返回0、1、-1 例如 sign(10-1) 返回1,sign(1-10) 返回-1, sign(1-1) 返回0

decode(条件,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值)

decode(sign(工资-8000),1,工资*1.15,-1,工资*1.20,工资*1.10) 工资在8000以上的涨15%,以下的涨20%, 其他的10%

case when 表达式 then 值/函数 else 值/函数 end

处理日期

MONTHS_BETWEEN(date2,date1): 两日期相差多少月  months_between('01-4月-08','02-8月-08')

ADD_MONTHS: 增加或减去月份 add_months(to_date(199912,yyyymm),-2/2)

Last_day(date1) :  计算指定日期所在月份的最后一天的日期

TO_DATE格式(以时间:2007-11-02   13:45:25为例)

TO_CHAR日期转换成字符串,格式化的内容是一样的

Year:

yy two digits 两位年                显示值:07

yyy three digits 三位年                显示值:007

yyyy four digits 四位年                显示值:2007

Month:

mm    number     两位月              显示值:11

mon    abbreviated 字符集表示          显示值:11月,若是英文版,显示nov

month spelled out 字符集表示          显示值:11月,若是英文版,显示november

Day:

dd    number         当月第几天        显示值:02

ddd    number         当年第几天        显示值:02

dy    abbreviated 当周第几天简写    显示值:星期五,若是英文版,显示fri

day    spelled out   当周第几天全写    显示值:星期五,若是英文版,显示friday

ddspth spelled out, ordinal twelfth

Hour:

hh    two digits 12小时进制            显示值:01

hh24 two digits 24小时进制            显示值:13

Minute:

mi    two digits 60进制                显示值:45

Second:

ss    two digits 60进制                显示值:25

其它

Q     digit         季度                  显示值:4

WW    digit         当年第几周            显示值:44

W    digit          当月第几周            显示值:1

24小时格式下时间范围为: 0:00:00 - 23:59:59....

12小时格式下时间范围为: 1:00:00 - 12:59:59 ....

常用的分组函数

AVG ([DISTINCT|ALL]n)

COUNT ({ *|[DISTINCT|ALL]expr})

MAX ([DISTINCT|ALL]expr)

MIN ([DISTINCT|ALL]expr)

SUM ([DISTINCT|ALL]n)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值