我想要一个SQL查询来检查给定时间戳是否属于业务的开放时间。这些营业时间根据一年中的时间(季节性营业时间)而变化,并且某些假期的营业时间将关闭。我有一份这些日期的清单,虽然它们可能会有所变化。
我想要的是一个用于在数据库中存储此信息的良好结构,以及一个如下所示的函数:
CREATE OR REPLACE FUNCTION is_business_open(event TIMESTAMP) RETURNS BOOLEAN AS $_$
...
$_$
我会在PostgreSQL 8.2.x上的plpgsql
中写这个,如果这有所不同。
答案 0 :(得分:2)
我会建议你打开的日期范围,以及时间。
date_start, date_end, time_open, time_close
查询可能如下所示:
select time_open, time_close from hours_table where date_start < @DateInput and @DateInput < date_end
你只是把你的开放时间。其他任何事情都是“封闭的”
答案 1 :(得分:0)
我建议将数据(日期,开放时间,关闭时间)放入表格并让您的查询从那里进行选择。