postgre将sql中的ISO DateTime转换为UnixTimestamp,其中子句-DBeaver客户端,po



我在postgres(DBeaver客户端(中有一个名为"CreatedAt"的列,它是int8数据类型,并保存unix时间戳值。示例:1659347651689

我正在编写一个查询,我想在where子句中输入一个ISO日期时间,并让它自动转换以查找适用的记录。

例如:通常,我会写:

select * from table1 where CreatedAt = '2022-08-01 09:54:11.000'

我不能这么做,因为CreatedAt列的值是1659347651689。有没有办法让它自动转换并定位具有该日期时间的记录?

我试过这个:

`select * from table1 where CreatedAt = date("CreatedAt",strtotime('2022-08-01 09:53:27.000'))` 

但strtotime不存在(猜测是因为它是Python命令。我尝试了date、dateadd,但没有成功(

您的数据以毫秒为单位,因此:

select to_timestamp(1659347651689/1000);
是的,谢谢Jeroen Mostert和a_hors_with_no_name(很棒的用户ID(。看完这里的链接后,我明白了。

如果有其他人在看,答案是:

从表1 pfs中选择*其中时间戳'epoch'+pfs"CreatedAt"/1000*间隔"1秒"="2022-08-01 09:53:13.000">

最新更新