【发布时间】:2012-02-15 03:21:30
【问题描述】:
我有一个数据类型为日期时间的列,因此包含以下值:06-FEB-12 02.39.11.000000000 PM。我只想将日期为06-FEB-12 的所有行的日期修改为25-JAN-12 以保留时间。
我可以通过更新查询来做同样的事情吗?
【问题讨论】:
我有一个数据类型为日期时间的列,因此包含以下值:06-FEB-12 02.39.11.000000000 PM。我只想将日期为06-FEB-12 的所有行的日期修改为25-JAN-12 以保留时间。
我可以通过更新查询来做同样的事情吗?
【问题讨论】:
我对数据类型有点困惑。您声明该列是DATE,但您提供的示例数据有小数秒,这意味着TIMESTAMP。
您可以从 2012 年 2 月 6 日具有 DATE 或 TIMESTAMP 的所有行中精确减去 12 天,这将在 2012 年 1 月 25 日产生 DATE 或 TIMESTAMP 值。
UPDATE table_name
SET column_name = column_name - interval '12' day
WHERE trunc( column_name ) = date '2012-02-06';
【讨论】:
missing or invalid <datetime field> 30089. 00000 - "missing or invalid <datetime field>" *Cause: A <datetime field> (YEAR, MONTH, DAY, HOUR, MINUTE, SECOND) is expected but not found, or a <datetime field> specified the <end field> in an <interval qualifier> is more significant than its <start field>.
day 而不是days。我没有编辑权限