在Oracle SQL中运行Total Over Repeating Interval

时间:2014-04-17 22:01:53

标签: sql oracle

使用Oracle SQL。数据全部存在于名为tracks的单个表中。

结果需要作为OR语句:

  1. 需要第1天的日期值,第7天的日期值,以及每个实例的记录数,其中7天范围内发生的事件数超过4个,按用户ID和部门分组;
  2. 需要第1天的日期值,第30天的日期值以及每个实例的记录数,其中30天范围内发生的事件数超过6个按用户ID和部门分组。
  3. 此查询将应用于一整年的零星计划事件。

    以下示例数据中的每条记录代表1个事件。

    UserID  Event Date  Dept
    User1   1/1/2013    A
    User1   1/2/2013    A
    User1   1/3/2013    A
    User1   1/10/2013   A
    User1   1/11/2013   A
    User1   1/12/2013   A
    User1   1/13/2013   A
    User1   1/14/2013   A
    User2   1/21/2013   B
    User2   1/22/2013   B 
    User2   1/23/2013   B
    User2   1/24/2013   B
    User2   1/25/2013   B
    User2   1/27/2013   B
    User2   1/28/2013   B
    User2   4/1/2013    B
    

    上述示例的结果集应类似于:

    UserID  Dept   Day1         Day7        Day30       7DayEventCount   30DayEventCount
    User1   A      1/10/2013    1/16/2013   2/8/2013    5                5
    User1   A      1/1/2013     1/7/2013    1/30/2013   3                15
    User1   A      1/2/2013     1/8/2013    1/31/2013   2                14
    User1   A      1/3/2013     1/9/2013    2/1/2013    1                13
    User1   A      1/4/2013     1/10/2013   2/2/2013    1                12
    User1   A      1/5/2013     1/11/2013   2/3/2013    2                11
    ...
    User2   B      1/21/2013    1/27/2013   2/19/2013   6                7
    User2   B      1/22/2013    1/28/2013   2/20/2013   6                6
    User2   B      1/23/2013    1/29/2013   2/21/2013   5                5
    

0 个答案:

没有答案