Oracle的TRUNC、ROUND函数,Sybase中功能相同的函数Oracle的TRUNC函数,Sybase中相同功能的函数CONVERT(Decimal(22,4),数值字段)Oracle,Trunc函数用法:Trunc的意思的截平(truncate),在oracle中用来根据指定的方式截断日期或数字,举例如下:1、截断日期时间:其具体的语法格式如下:TRUNC(date[,fmt])其中:date一个日期值fmt日期格式,该日期将由指定的元素格式所截去。忽略它则由最近的日期截去举例,Sql代码:1.selectto_char(trunc(sysdate,'dd'),'yyyy-mm-ddhh24:mi:ss')时间fromdual;2.时间3.-------------------4.2012-10-2800:00:00selectto_char(trunc(sysdate,'dd'),'yyyy-mm-ddhh24:mi:ss')时间fromdual;时间-------------------2012-10-2800:00:00这里的dd可以是格式元素的任何一个如yyyy,mm,dd,hh24,mi,ss等。结果是截断指定的元素之后的所有数据并显示出最接近的日期或时间。多举几个例子来凑篇幅:按月份截断,则显示月份的第一天。Sql代码:1.selectto_char(trunc(sysdate,'mm'),'yyyy-mm-ddhh24:mi:ss')时间fromdual2.时间3.-------------------4.2008-08-0100:00:00selectto_char(trunc(sysdate,'mm'),'yyyy-mm-ddhh24:mi:ss')时间fromdual时间-------------------2012-10-0100:00:00按分钟截断,则秒为0。Sql代码:1.selectto_char(trunc(sysdate,'mi'),'yyyy-mm-ddhh24:mi:ss')时间fromdual2.时间3.-------------------4.2012-10-2816:08:00selectto_char(trunc(sysdate,'mi'),'yyyy-mm-ddhh24:mi:ss')时间fromdual时间-------------------2012-10-2816:08:002、截断数字格式如下:TRUNC(number[,decimals])其中:number待做截取处理的数值decimals指明需保留小数点后面的位数。可选项,忽略它则截去所有的小数部分。如果为负数则表示从小数点开始左边的位数,相应整数数字用0填充,小数被去掉。需要注意的是,和round函数不同,对截断的数字并不四舍五入。举例如下:Sql代码:1.selecttrunc(1234.4678,-1)fromdual2.TRUNC(1234.4678,-1)3.-------------------4.12305.6.selecttrunc(1234.4678,2)fromdual7.TRUNC(1234.4678,2)8.------------------9.1234.46Oracle,Round函数用法:截取数字格式如下:ROUND(number[,decimals])其中:number待做截取处理的数值decimals指明需保留小数点后面的位数。可选项,忽略它则截去所有的小数部分,并四舍五入。如果为负数则表示从小数点开始左边的位数,相应整数数字用0填充,小数被去掉。需要注意的是,和trunc函数不同,对截取的数字要四舍五入。举例如下:Sql代码:1.selectround(1234.4678,-1)fromdual2.ROUND(1234.4678,-1)3.-------------------4.12305.6.selectround(1234.4678,2)fromdual7.ROUND(1234.4678,2)8.------------------9.1234.47Sybase中与TRUNC、ROUND函数功能相同的函数--Convert函数:1、日期转换convert(datetype[(length)],expression,format)format指定将日期转换为什么格式,有以下值:没有世纪有世纪转换字符串中日期格式0or100monddyyyhh:miAM(orPM)1101mm/dd/yy2102yy.mm.dd3103dd/mm/yy4104dd.mm.yy5105dd-mm-yy6106ddmonyy7107mondd,yy8108hh:mm:ss9or109mondd,yyyyhh:mi:ss:mmmAM(orPM)10110mm-dd-yy11111yy/mm/dd12112yymmdd2、截取数字格式如下:CONVERT(Decimal(p,s),number)其中:number待做截取处理的数值decimal(p,s)p(有效位数)s(小数位数)s表示小数点后面的位数,而p则表示整数加上小数总共的位数,对截取的数字四舍五入。举例如下:Sql代码:1.selectconvert(decimal(22,4),12.3456789)2.convert(decimal(22,4),12.3456789)3.-------------------4.12.34575.