oracle怎么求上一年 oracle加一年之后的日期

oracle中如何获得日期中的年份?

在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。

创新互联长期为1000多家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为友谊企业提供专业的做网站、成都做网站友谊网站改版等技术服务。拥有10年丰富建站经验和众多成功案例,为您定制开发。

此方法获得的结果,是数值型的,你可以设置一个方法测试一下。

oracle如何获取去年全年的数据和今年到上个月为止的数据

设:

1、数据表名称为:TABLE1

2、TABLE1中的date字段名为:COLUMN1

获取去年到今年的上月底的数据的SQL如下:

select *

from TABLE1 t

where t.COLUMN1 = add_months(trunc(sysdate,'YYYY'),-12)

and t.COLUMN1  trunc(sysdate,'MM')

请问ORACLE如何求出2012年以前所有的1月1号到1月3号的数据,即往年的某一时段的所有数据

如果日期列是日期类型:

seelct * from 表名 where to_char(日期,'mmdd') between '0101' and '0103' and to_char(日期,'yyyy')='2012';

如果日期列是字符串类型:(假设数据格式是YYYYMMDD)

select * from 表名 where substr(日期,1,4)='2012' and substr(日期,5,4) between '0101' and '0103';

如果格式不是上述8位年月日的写法(如2012-01-01,2012/01/01,请自行调整SUBSTR中截取起始位置和字符数两个参数。

Oracle查询去年1月1日到去年今天的数据

不会用函数吗? 其实你就是想查去年1月到去年今天的语句吧?一看就知道是想算同比了。

ADD_MONTHS(sysdate,-12) 去年今天

ADD_MONTHS(trunc(sysdate,'yyyy') ,-12)去年第一天

where DATE=ADD_MONTHS(trunc(sysdate,'yyyy') ,-12) and date=ADD_MONTHS(sysdate,-12)

或者 where date between ADD_MONTHS(trunc(sysdate,'yyyy') ,-12) and ADD_MONTHS(sysdate,-12)


新闻标题:oracle怎么求上一年 oracle加一年之后的日期
转载注明:http://cdiso.cn/article/hjsoji.html

其他资讯