我有一个表,其中包含Date
数据类型的某些列。我需要保持Date
部分不变,但是我需要将所有time
部分的格式设置为00:00:00。
例如:
09-FEB-14 09:00:00
10-MAR-12 12:00:00
我需要将它们更新为:
09-FEB-14 00:00:00
10-MAR-12 00:00:00
我该怎么做?
答案 0 :(得分:4)
由于您似乎想将时间部分截断到午夜,因此您可以使用TRUNC
函数:
UPDATE your_table
SET date_column = TRUNC( date_column )
如果您想将它们设置为特定时间,则可以使用TRUNC
并添加一个INTERVAL
文字:
UPDATE your_table
SET date_column = TRUNC( date_column ) + INTERVAL '12:34:56' HOUR TO SECOND;
如果您想休假一个小时,则可以减去INTERVAL
文字:
UPDATE your_table
SET date_column = date_column - INTERVAL '1' HOUR;
或减去一天的一部分:
UPDATE your_table
SET date_column = date_column - 1/24;