如何检索 PostgreSQL 中两个日期之间的行?

How to retrieve the rows between two dates in PostgreSQL?

如何在 PostgreSQL 中检索两个日期之间的行?

ID        START_DATE        END_DATE

1         02/03/2020       02/03/2021

2         05/04/2020       NULL

在上面的例子中,end_date列是NULLABLE

我想使用 date 检索位于 START_DATEEND_DATE 之间的行。最后 NULL 被认为是 infinite.

我不知道如何将单个 date 输入传递给 two 列并处理 NULL

如果您使用的是 Postgres,则可以使用 infinity 作为最终值。我建议使用它而不是 NULLdocumentation.

中对此进行了解释

在此期间,您可以:

date >= start_date and
(date < end_date or end_date is null)

我不确定 end_date 是否包含在内,所以这可能是 <=