【发布时间】:2023-02-08 19:38:18
【问题描述】:
我有以下 postgresql 表;
id | date_slot
------+-------------------------
1 | [2023-02-08,2023-02-15)
2 | [2023-02-20,2023-02-26)
3 | [2023-02-27,2023-03-29)
我想进行查询以返回包含在这些范围内但不包括周末的行
例如,我所做的查询返回以下但不排除周末。
SELECT * FROM table where '2023-02-11'::date <@ date_slot;
id | date_slot
------+-------------------------
1 | [2023-02-08,2023-02-15)
'2023-02-11' 是周末,因此它不得返回结果。我怎样才能做到这一点?
谢谢
【问题讨论】:
-
试试
SELECT * FROM table WHERE '2023-02-11'::date <@ date_slot AND date_part('dow', '2023-02-11'::date) NOT IN (0, 6);date_part过滤周末 -
这回答了你的问题了吗? PostgreSql: select only weekends
标签: sql postgresql date