Oracle上一年的日期

时间:2015-05-30 15:05:43

标签: oracle date datetime

我在Oracle的1列中有以下值:

20123103
20113112
20103006

数据类型为varchar。

我需要回去1年,然后在Oracle中找到相同格式的日期。

所以,输出应该是:

20123103 -> 20110104
20113112 -> 20110101
20103006 -> 20090107

请告知。

1 个答案:

答案 0 :(得分:2)

您可以将其转换为日期,减去一年,然后将其格式化为字符串:

SELECT TO_CHAR(TO_DATE(date_column, 'YYYYDDMM') 
                - INTERVAL '1' YEAR
                + INTERVAL '1' DAY, 
               'YYYYDDMM')
FROM   my_table