想要把值变成201013,或者201099这样的数字,请问如何做到?

在ORACLE的表中有两个字段,一个是MONTH,一个是INTERVAL,

这两个字段都是整型的,其中MONTH是表示的销售月份,例如201001,201004,201101,

INTERVAL表示的是间隔月份,例如-1,-2,-3,1,2,3

格式为类似如下的格式

MONTH INTERVAL

201001 -2

201001 -1

201001 0

201001 1

201002 -1

201002 0

201002 1

201002 2

每个MONTH都有多个INTERVAL,我想要得到MONTH + INTERVAL以后的值,这个值的类型不管如何,但是值仍然还是像201101,201004这样的按照月份来显示,不能变成201013,或者201099这样的数字,请问如何做到

HUH函数
浏览 149回答 2
2回答

元芳怎么了

oracle中有一个月份处理函数add_months(date,int) 返回一个date型add_months(to_date(MONTH,'yyyymm'),INTERVAL)如果需要返回MONTH一致的格式to_char(add_months(to_date(MONTH,'yyyymm'),INTERVAL),'yyyymm')

慕的地6264312

select to_char(add_months(to_date(MONTH || '01'),INTERVAL),'yyyymm') from table
打开App,查看更多内容
随时随地看视频慕课网APP