Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Postgresql-在特定时间和日期范围之间选择_Postgresql_Date - Fatal编程技术网

Postgresql-在特定时间和日期范围之间选择

Postgresql-在特定时间和日期范围之间选择,postgresql,date,Postgresql,Date,我正试图从我的表格中获取一些数据——我只需要一天中某个特定的时间(一天晚上22:00到第二天早上06:00之间)在一个固定的日期范围内 这就是我到目前为止所做的: create new_table as select table.v1, table.localminute from table where date(table.localminute) between date('2013-11-01 00:00:00-05') and date('2014-12-01 00:00:00-05

我正试图从我的表格中获取一些数据——我只需要一天中某个特定的时间(一天晚上22:00到第二天早上06:00之间)在一个固定的日期范围内

这就是我到目前为止所做的:

create new_table
as select table.v1, table.localminute from table 
where date(table.localminute) between
date('2013-11-01 00:00:00-05') and date('2014-12-01 00:00:00-05') 
and hour(table.localminute) between 22 and 6
我不知道如何获取每天22:00:00-05和06:00:00-05之间的数据

我也考虑过在日期上使用通配符,但要么它不起作用,要么我的实现不正确。任何帮助都将不胜感激

我使用了下面链接中的信息来设置它-不确定我需要做什么

选择v1,本地分钟
从“表”
其中,‘2013-11-01’::日期和‘2014-12-01’::日期之间的本地分钟
和(从localminute中提取('hour')>=22或从localminute中提取('hour')<6);
选择v1,本地分钟
从“表”
其中,‘2013-11-01’::日期和‘2014-12-01’::日期之间的本地分钟
和(从localminute中提取('hour')>=22或从localminute中提取('hour')<6);

谢谢!这帮我指明了正确的方向。无法真正提取“日期”,因此这是我最终查询的结果:发现您只能提取时间戳的部分,如日、时、年,因此从查询中删除了该部分:再次感谢您的帮助!谢谢我会投赞成票,但我还没有足够的学分。谢谢!这帮我指明了正确的方向。无法真正提取“日期”,因此这是我最终查询的结果:发现您只能提取时间戳的部分,如日、时、年,因此从查询中删除了该部分:再次感谢您的帮助!谢谢我会投赞成票,但我还没有足够的学分。
SELECT v1, localminute 
FROM "table" 
WHERE localminute BETWEEN '2013-11-01'::date AND '2014-12-01'::date 
AND (extract('hour' from localminute) >= 22 OR extract('hour' from localminute) < 6);