sql关于日期的一个问题 select trunc(to_date('2011-02-22','yyyy-mm-dd')) from dual和select to_date('2011-02-22','yyyy-mm-dd') from dual 输出一样,有什么区别吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 select to_date('2011-02-22','yyyy-mm-dd') from dual 就是输出 2011-2-22 没说的select trunc(to_date('2011-02-22','yyyy-mm-dd')) from dualtrunc可以截断数字 和 日期 trunc(日期) 默认的是获取今天trunc(日期,'day') 获取当前周的第一天trunc(日期,'mm') 获取当前月的第一天trunc(日期,'yyyy') 获取当前年的第一天 1.TRUNC(for dates) TRUNC函数为指定元素而截去的日期值。 其具体的语法格式如下: TRUNC(date[,fmt]) 其中: date 一个日期值 fmt 日期格式,该日期将由指定的元素格式所截去。忽略它则由最近的日期截去 下面是该函数的使用情况: TRUNC(TO_DATE('24-Nov-1999 08:00 pm'),'dd-mon-yyyy hh:mi am') ='24-Nov-1999 12:00:00 am' TRUNC(TO_DATE('24-Nov-1999 08:37 pm','dd-mon-yyyy hh:mi am'),'hh') ='24-Nov-1999 08:00:00 am' trunc(sysdate,'yyyy') --返回当年第一天. trunc(sysdate,'mm') --返回当月第一天. trunc(sysdate,'d') --返回当前星期的第一天. trunc(sysdate,'dd')--返回当前年月日 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记。与取整类似,比如参数为1即取整到十分位,如果是-1,则是取整到十位,以此类推。 你写的这两句的返回结果都是一样的,但是你可以百度下trunc日期的用法它的格式为trunc(date[,format])如果有format,则根据foramt进行截取,默认年月日例如select trunc(to_date('2011-02-22 12:12:12','yyyy-mm-dd hh24:mi:ss')) from dual 返回2011-2-22select trunc(to_date('2011-02-22 12:12:12','yyyy-mm-dd hh24:mi:ss'),'hh24') from dual返回2011-2-22 12:00:00select trunc(to_date('2011-02-22 12:12:12','yyyy-mm-dd hh24:mi:ss'),'mi') from dual返回2011-2-22 12:12:00 Struts2 Push Tag 引发的问题 applet报错 《java concurrency in practice》3章1节 visibility 多线程 在线文本编辑器缓存问题?? 急!!!望大虾多多帮忙!!!!!!!!!! .net客户端(C#)调用weblogic9.2下的webservice(axis1.4) 本人坐堂解决中文乱码问题 谁能告诉我这个算法是什么意思 hibernate的奇怪问题 关于servlet显示不出汉字的问题? 求解决方案:Mina框架作为服务端、Socket作为客户端、如何使双方进行交互? spring定时器没有反应是怎么回事
select trunc(to_date('2011-02-22','yyyy-mm-dd')) from dualtrunc可以截断数字 和 日期 trunc(日期) 默认的是获取今天trunc(日期,'day') 获取当前周的第一天trunc(日期,'mm') 获取当前月的第一天trunc(日期,'yyyy') 获取当前年的第一天
TRUNC函数为指定元素而截去的日期值。
其具体的语法格式如下:
TRUNC(date[,fmt])
其中:
date 一个日期值
fmt 日期格式,该日期将由指定的元素格式所截去。忽略它则由最近的日期截去
下面是该函数的使用情况:
TRUNC(TO_DATE('24-Nov-1999 08:00 pm'),'dd-mon-yyyy hh:mi am')
='24-Nov-1999 12:00:00 am'
TRUNC(TO_DATE('24-Nov-1999 08:37 pm','dd-mon-yyyy hh:mi am'),'hh') ='24-Nov-1999 08:00:00 am'
trunc(sysdate,'yyyy') --返回当年第一天.
trunc(sysdate,'mm') --返回当月第一天.
trunc(sysdate,'d') --返回当前星期的第一天.
trunc(sysdate,'dd')--返回当前年月日
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记。与取整类似,比如参数为1即取整到十分位,如果是-1,则是取整到十位,以此类推。
它的格式为trunc(date[,format])
如果有format,则根据foramt进行截取,默认年月日
例如
select trunc(to_date('2011-02-22 12:12:12','yyyy-mm-dd hh24:mi:ss')) from dual
返回2011-2-22
select trunc(to_date('2011-02-22 12:12:12','yyyy-mm-dd hh24:mi:ss'),'hh24') from dual
返回2011-2-22 12:00:00
select trunc(to_date('2011-02-22 12:12:12','yyyy-mm-dd hh24:mi:ss'),'mi') from dual
返回2011-2-22 12:12:00