0

我不确定如何使用 postgres 函数检查日期范围。我想要做的是检查日期是否在一定范围内(在开始日期前一周有余地)

所以基本上,我想检查一个日期是否在 之间7 days before to current date,如果是,我将返回该行的 id。

create or replace function eight(_day date) returns text as $$
declare
  r record;
  check alias for $1;
  startDate date;
begin
    for r in
    select * from terms
    order by starting;
  loop
    startDate := r.starting;
    if check between (..need help to create 7 days before startDate) and startDate return r.id;


end;
$$ language plpgsql;

我还必须检查上一条记录的结束日期是否与 startDate - 7 天相冲突。如何查看以前的记录?

4

2 回答 2

1

听起来你想使用一个区间

startDate - interval '...'

既然你在做作业,我就不多说了。

于 2012-04-21T05:42:13.640 回答
0

日期适用于整数数学。

startdate - 8 等价于 (startdate::timestamp - '8 days'::interval)::date

于 2012-10-15T02:34:34.327 回答