我在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);
如果有其他人在看,答案是:
从表1 pfs中选择*其中时间戳'epoch'+pfs"CreatedAt"/1000*间隔"1秒"="2022-08-01 09:53:13.000">