如何在 sql 中放置条件以从具有 UTC 格式的日期和时间的列中获取记录?

How to put where condition in sql for fetching records from a column that has date and time in UTC format?

我在 lastmodified 列之一中有一些 UTC 格式的数据。以下示例数据。

lastmodified 列(示例数据):

05-NOV-15 08.44.00.682392000 PM
05-NOV-15 08.43.00.808086000 PM
06-NOV-15 06.15.01.035835000 PM
06-NOV-15 06.14.00.694774000 PM
07-NOV-15 04.26.00.851745000 PM
07-NOV-15 04.26.00.690437000 PM
08-NOV-15 04.25.00.850166000 PM
08-NOV-15 04.25.00.683356000 PM
09-NOV-15 04.24.00.821617000 PM
09-NOV-15 04.24.00.768993000 PM
10-NOV-15 04.23.00.804560000 PM
10-NOV-15 01.20.00.501400000 PM

查询:

select *
  from my_table
 where trunc(lastmodified) = to_char(sysdate, 'dd-mon-yy');

以上查询有效,但没有提供我想要的内容。如何获取 10-NOV-15 01.00.00 日期时间以上的所有记录?

鉴于 lastmodified 的数据类型是 TIMESTAMP 你应该可以做到

SELECT *
  FROM MY_TABLE
  WHERE TRUNC(LASTMODIFIED) = TRUNC(SYSDATE)

或者,如果你真的想获取 >= 10-NOV-15 01.00.00 的记录,你可以使用

SELECT *
  FROM MY_TABLE
  WHERE LASTMODIFIED >= TO_DATE('10-NOV-15 01.00.00', 'DD-MON-RR HH24.MI.SS')

祝你好运。