选择两个unix时间戳之间的日期

时间:2012-10-29 15:56:26

标签: postgresql timestamp unix-timestamp

我有桌面用户。

列:

  • user_id - 整数
  • user_date - 整数(unix timestamp)

有些行有user_date,有些行有NULL。

我需要找到所有user_id,其中user_date包含介于'2012-10-21'和'2012-10-24'之间的时间段

2 个答案:

答案 0 :(得分:5)

SELECT *
FROM users
WHERE user_date BETWEEN
  EXTRACT(EPOCH FROM date '2012-10-21') AND
  EXTRACT(EPOCH FROM date '2012-10-24' + interval '1 day');

如果您不希望包含结束日期,请删除添加一天的位。

答案 1 :(得分:0)

select *
from users
where 
    timestamp 'epoch' + user_date * interval '1 second' between '2012-10-21' and '2012-10-24' 
    and
    user_date is not null