用空间隔选择between



我想做一些像

SELECT * FROM mytable WHERE created_at BETWEEN A AND B

这些变量可以是空的,如果它是空的我希望我可以回到数据的下界和上界,我的意思是:

<表类>名称Created_attbody><<tr>第一个01-01-2021第二02-03-2021第二31-12-2021

使用coalesce:

SELECT * FROM mytable
WHERE created_at BETWEEN coalesce(
CAST (A AS timestamp with time zone),
'-infinity'
)
AND coalesce(
CAST (B AS timestamp with time zone),
'infinity'
);