我需要一些关于postgresql时间戳的帮助。我有一个时区的列,其中时区名为download_at
,用于用户下载应用程序和列user_id
这是一个整数。我正在尝试从最近60天的信息中提取在过去168小时内下载的用户的用户ID。我对如何处理这个问题感到有点困惑,因为两次不同而感到困惑。我相信我可能不得不玩截断功能,但感觉有点卡住了。
答案 0 :(得分:0)
一个基本的例子:
SELECT *
FROM table1
WHERE download_at > now() - '186 hours'::interval
Postgres在处理日期和时间时现象。这样做的细分:
now() --function that returns the current time as a datetime object
'186 hours'::interval --a string cast to an interval
在postgres中::
进行投射。当转换为间隔时,Postgres会将格式化的英语转换为间隔对象。由于您可以减去日期时间和间隔对象,因此它将为您完成剩余的工作。