0
我有一个事件日历: 日历总是有一个开始点和结束点(例如29.04.2014,直到2014年6月9日)PostgreSQL的日期范围
事件从该日期范围显示:
AND DATE(event_from) >= DATE(?) //29.04.2014
AND DATE(event_to) <= DATE(?) //09.6.2014
但如果事件开始28.04,结束2014年6月10日希望它显示在日历
我怎么能证明这个事件,如果超出这个范围,而且保持在范围
由于克林:
总之
AND (daterange(DATE(event_from), DATE(event_to)) && daterange(DATE(?), DATE(?)) OR( DATE(event_from) >= DATE(?) AND DATE(event_to) <= DATE(?) ) )
谢谢你的解决方案,但不能改变你别列 – Froxz
的数据类型不得不。就像在这个例子中一样,只在'where'子句中使用'daterange'。 – klin
使用'daterange(DATE(event_from),DATE(event_to))&& daterange(DATE('2016-05-01'),DATE('2016-05-31'))'解决了它,但没有得到只是记录一天的活动。 – Froxz