Oracle有没有办法更新日期而不是月,年

时间:2013-05-01 15:18:36

标签: oracle date

有没有办法更新Date类型列的日期部分。例如,DB中的行具有值2013-11-22 [以YYYY-MM-DD格式存储]。我想将其更新为2013-11-01。

如果它是一行或几行我可以做一个简单的更新。但真正的问题是大约有十万行具有不同的日期值。我想将所有日期更新到每月1日。例如

     Actual    What I would like it to be
    2013-01-22  2013-01-01
    1989-10-03  1989-10-01
    2004-07-01  2004-07-01
    2005-12-31  2005-12-01

感谢任何帮助,我怎样才能通过SQL完成这项工作。在此先感谢。

2 个答案:

答案 0 :(得分:6)

假设数据类型是日期,请使用trunc

TRUNC(date_column, 'mm')

Here is a sqlfiddle demo

答案 1 :(得分:2)

是的,您可以使用trunc()函数。

例如:

  

更新thetable set datevalue = trunc(datevalue,'MM');