如何将 Unix 纪元时间戳与 SQL 中的 DATE 进行比较?

How can I compare a Unix epoch timestamp with a DATE in SQL?

如何将 Unix 纪元时间戳与 SQL 中的日期进行比较?

例如,我有一个 DATE data_type 列,其中有一个条目 14-DEC-20 (i.g to_date('14-DEC-20','DD-MON-RR')) 和一个与此等效的纪元日期。我想检查 DATE 是否等于纪元,如果不是则在日期中设置等效的纪元日期。

我试过 from_unixtime 或使用 CAST,但没有用。

您可以使用以下方法将纪元时间转换为 Oracle 中的日期:

date '1970-01-01' + <your epoch value> * interval '1' second

然后您可以将其用作比较:

where datecol = date '1970-01-01' + <your epoch value> * interval '1' second

注意:这是在级别进行比较。如果你想在级别,你需要调整。您可以为此使用 date

where datecol = date '1970-01-01' + floor(<your epoch value> / (24 * 60 * 60)) * interval '1' day