我面临一个sql选择的挑战,它应该提供当前星期的日期和05:00到22:00之间的时间段。(所以从这周周一到周日的数据在5:00到22:00之间)
我在这个方向上搜索了其他问题,虽然我找到了类似的问题,但到目前为止我还没有解决我的挑战。
SELECT general_power
FROM t_power
WHERE date_trunc('week', p_date_time) = date_trunc('week', CURRENT_TIMESTAMP)
AND date_trunc('hour', p_date_time) BETWEEN 'week? 05:00:00' AND 'week? 22:00:00'
p_date_time是一个"时间戳"列,其中包含每天每分钟的大量数据。
最后一行的"week?"是问题所在。有了这个,我试图找到一个像通配符一样的东西(如果存在这样的东西)。但我也很高兴有其他的解决方案:)
select general_power
from t_power
where
date_trunc('week', p_date_time) = date_trunc('week', current_timestamp)
and
p_date_time::time between '05:00:00' and '22:00:00'
between
意味着时间> ="05:00:00"和时间& lt; ="22:00:00"