我有两个专注于我的专栏。一个存储日期值,另一个存储时间戳值。当日期或日期时间在90天以内时,如何从每列中选择查找数据?
例如,我正在寻找类似这样的东西
SELECT * FROM table WHERE date_column in range (current_date + 90);
,类似于时间戳列
SELECT * FROM table WHERE timestamp_with_timezone_column IN RANGE (current_timestamp_with_timezone + 90);
答案 0 :(得分:0)
只需使用一个区间来适应
SELECT * FROM table
WHERE date_column <= current_date + INTERVAL '3 MONTH'
-- or if you prefer
-- WHERE date_column <= current_date + INTERVAL '90 DAY'
时间戳大致相同:
SELECT * FROM table
WHERE timestamp_with_timezone_column <= current_timestamp + INTERVAL '3 MONTH'
或者,如果想要删除当前时间,那么可能:
WHERE timestamp_with_timezone_column <= date_trunc('day',current_timestamp) + INTERVAL '3 MONTH'