oracle函数 向右截取,Oracle截取函数

Oracle截取函数

.

分类: oracle2010-03-24 16:5493人阅读评论(0)收藏举报

1.TRUNC(for dates)   和 TO_CHAR() 函数

注:

为月(mm)时,精确到------年,月(不管哪年,只要是相同的月和哪天)

为日(dd)时,精确到------年,月,日(不管哪年的哪月,只关心是哪天)

SELECT DISTINCT   TRUNC (u.start_date, 'DD') - TO_CHAR (u.start_date, 'D') + 6   a2t

from user_product u

to_char(sysdate, 'yyyy/mm/dd');          would return '2003/07/09'

to_char(sysdate, 'Month DD, YYYY');     would return 'July 09, 2003'

to_char(sysdate, 'FMMonth DD, YYYY'); would return 'July 9, 2003'

to_char(sysdate, 'MON DDth, YYYY');     would return 'JUL 09TH, 2003'

to_char(sysdate, 'FMMON DDth, YYYY'); would return 'JUL 9TH, 2003'

to_char(sysdate, 'FMMon ddth, YYYY');  would return 'Jul 9th, 2003'

--  截取到年份,然后再加上6年

SELECT DISTINCT   TO_CHAR (u.start_date, 'yyyy') + 6   a2t

from user_product u

--  截取到月份

SELECT DISTINCT   TO_CHAR (u.start_date, 'mm')  a2t

--  截取到日

from user_product u

SELECT DISTINCT   TO_CHAR (u.start_date, 'dd')  a2t

--  截取到日

from user_product u

SELECT DISTINCT   TO_CHAR (u.start_date, 'd')  a2t

from user_product u

SELECT DISTINCT   TO_CHAR (u.start_date, 'yyyy-mm-dd')  a2t

from user_product u

--  截取到年份

SELECT DISTINCT   TRUNC (u.start_date, 'yyyy') a2t

from user_product u

SELECT DISTINCT   TRUNC (sysdate, 'yyyy') a2t

from user_product u

--  截取到月份

SELECT DISTINCT   TRUNC (u.start_date, 'mm') a2t

from user_product u

SELECT DISTINCT   TRUNC (sysdate, 'mm') a2t

from user_product u

SELECT DISTINCT   TRUNC (to_date('2010-02-28', 'yyyy-mm-dd'), 'mm') a2t

from user_product u

--  截取到日

SELECT DISTINCT   TRUNC (u.start_date, 'dd') a2t

from user_product u

SELECT DISTINCT   TRUNC (sysdate, 'dd') a2t

from user_product u

--  截取到所给日期的最近一个周日的时间(当前日期向前推)

SELECT DISTINCT   TRUNC (sysdate, 'd') a2t

from user_product u

SELECT DISTINCT   TRUNC (to_date('2010-03-06', 'yyyy-mm-dd'), 'd') a2t

from user_product u

2.TRUNC(for number)

TRUNC函数返回处理后的数值,其工作机制与ROUND函数极为类似,只是该函数不对指定小数前或后的部分做相应舍入选择处理,

而统统截去。

其具体的语法格式如下

TRUNC(number[,decimals])

其中:

number 待做截取处理的数值

decimals 指明需保留小数点后面的位数。可选项,忽略它则截去所有的小数部分

下面是该函数的使用情况:

TRUNC(89.985,2)=89.98

TRUNC(89.985)=89

TRUNC(89.985,-1)=80

注意:第二个参数可以为负数,表示为小数点左边指定位数后面的部分截去,即均以0记。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值