相关疑难解决方法(0)

在PostgreSQL中查找重叠的日期范围

它是否正确?

SELECT * 
FROM   contract 
JOIN   team USING (name_team) 
JOIN   player USING(name_player) 
WHERE  name_team = ? 
AND    DATE_PART('YEAR',date_join)>= ? 
AND    DATE_PART('YEAR',date_leave)<= ?
Run Code Online (Sandbox Code Playgroud)

我的桌子上contract有球员姓名,球队名称以及他加入和离开俱乐部的日期.
我想制作一个功能,列出特定年份团队中的所有玩家.
上面的查询似乎没有工作......

sql postgresql date-range overlap

12
推荐指数
2
解决办法
1万
查看次数

从now()函数中减去小时数

我们有一台24x7全天候运行的机器.每天我都会报告每小时生产的件数.在我们的例子中,一个工作日意味着'2015-06-16 06:00:00'到'2015-06-17 06:00:00'.

这是我的代码:

select date_trunc('hour', t_el_eventlog.eventtime at time zone 'CET') as hours,
       count (distinct t_el_eventlog.serialnumber) as count
from t_el_eventlog
where eventtime at time zone 'CET' between '2015-06-16 06:00:00'
                                       and '2015-06-17 06:00:00'
and sourceid = '44'
group by hours
order by hours asc
Run Code Online (Sandbox Code Playgroud)
  • 我的Postgres版本:"PostgreSQL 9.4.1,由Visual C++编译构建1800,32位"

  • 我正在处理的两列数据类型:

    eventtime timestamp without time zone
    sourceid  integer NOT NULL
    
    Run Code Online (Sandbox Code Playgroud)
  • 时区是"欧洲/柏林".

通过上面的查询,我得到了我想要的信息,但我必须每天更改日期.是否可以将该now()功能用作我的情况的默认值,这样我就不必每天手动更改日期?

sql postgresql timezone datetime date-arithmetic

4
推荐指数
2
解决办法
2万
查看次数