在Oracle中,要获得日期中的年份,例如把sysdate中的年份取出来,并不是一件难事。 常用的方法是:Select to_number(to_char(sysdate,''yyyy'')) from dual, 而实际上,oracle本身有更好的方法,那就是使用Extract函数, 使用方法是:Select Extract(year from sysdate) from dual,这种方法省掉了类型转换,看上去更加简洁。 相应的,要取得月份或日,可以用select extract (month from sysdate) from dual和select extract (day from sysdate) from dual。 此方法获得的结果,是数值型的,大家可以设置一个方法测试一下。 select EXTRACT(year FROM to_date('2009-11-10','yyyy-mm-dd')) year from dual;
在Oracle中,要获得日期中的年份,例如把sysdate中的年份取出来,并不是一件难事。
常用的方法是:Select to_number(to_char(sysdate,''yyyy'')) from dual,
而实际上,oracle本身有更好的方法,那就是使用Extract函数,
使用方法是:Select Extract(year from sysdate) from dual,这种方法省掉了类型转换,看上去更加简洁。
相应的,要取得月份或日,可以用select extract (month from sysdate) from dual和select extract (day from sysdate) from dual。
此方法获得的结果,是数值型的,大家可以设置一个方法测试一下。
select EXTRACT(year FROM to_date('2009-11-10','yyyy-mm-dd')) year from dual;
可以用 ntemp := to_number(to_char(sysdate,'mm'))
to_number没有这样的功能