代码之家  ›  专栏  ›  技术社区  ›  Kashif

从表中获取日期差异记录

  •  0
  • Kashif  · 技术社区  · 16 年前

    我有这样的数据。以下是示例数据。

    alt text http://a.imageshack.us/img695/441/custoemrids.png

    我想得到所有的客户ID,其中有2个小时的查询日期差异。

    例如customerid10602有3个查询。如果这三个查询中的任何一个的时差是2小时,那么这个CustomerId应该在我的结果集中。其他顾客也一样。

    谢谢

    2 回复  |  直到 16 年前
        1
  •  0
  •   Thomas    16 年前

    这假定inquiryid是表的PK。我还以为你想数东西 两个小时。

    Select Distinct T1.CustomerId
    From Table As T1
    Where Exists    (
                    Select 1
                    From Table As T2
                    Where T2.CustomerId = T1.CustomerId
                        And T2.EnquiryId <> T1.EnquiryId
                        And Abs(DateDiff(hh, T1.DateCreated, T2.DateCreated)) <= 2
                   )
    
        2
  •  0
  •   Neil Knight    16 年前
    SELECT [CustomerId]
      FROM [Table]
     WHERE [DateCreated] >= DATEADD(hour, -2, GETDATE())
       AND [CustomerId] = xxx;