oracle范例: select extract(year from sysdate) from dual;// return current year select extract(month from sysdate) from dual; //return current month select extract(day from sysdate) from dual; //return current day select extract(hour from s
oracle范例:
select extract(year from sysdate) from dual;// return current year
select extract(month from sysdate) from dual; //return current month
select extract(day from sysdate) from dual; //return current day
select extract(hour from sysdate) from dual;//error
select extract(hour from timestamp '2005-10-10 10:10:10') from dual;// correct
select extract(minute from sysdate) from dual;//error
select extract(minute from timestamp '2005-10-10 10:10:10') from dual;// correct
以上是extract()函数的使用说明,有个很重要的部分.就是extract 抽取年月日部分和时分部分的使用方法是不同的.
extract(year from sysdate)中from 的下一个参数是日期类型的时候可以抽取年月日.就是说这个参数是日期类型的时候就可以抽取年月日,而抽取不了时分部分.抽取时分部分得在from 后面加带timestamp 且后面加时间字符.
这里要注意,在(minute from timestamp '2005-10-10 10:10:10')中,如果把'2005-10-10 10:10:10'用日期类型的字段来代替并转换成字符类型后,也是错误的,估计是这方法的问题.
比如(minute from timestamp to_date(to_char(日期类型,'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss')),这样执行不了的.
如果真要从日期类型的字段中抽取时分部分用to_char() 函数就可以了.比如to_char(日期类型,'hh24:mi')
.syntaxhighlighter{padding-top:20px;padding-bottom:20px;}【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:)!