两行之间的日期差异

Date difference between two rows

我没有做过excel编程。我有一个 table 如下:

Excel 部分

CreatedTime Id 
05/04/2015 1000 
05/10/2015 1000 
05/12/2015 1000
05/01/2015 1001
05/05/2015 1001
05/03/2015 1002
05/13/2015 1002

我想要的是:

CreatedTime Id  Days_Between_Actions
05/04/2015 1000 4
05/10/2015 1000 6
05/12/2015 1000 2
05/01/2015 1001 1
05/05/2015 1001 4
05/03/2015 1002 3
05/13/2015 1002 10

此公式适用于每个 'Id' 对应的条目,每个 'Id' -> =IF(A3 = "05/01/2015",1,DAYS(A3,A2)) 的第一个条目除外。但是对于对应于每个 'Id' 的第一个条目,公式必须是 =IF(A2 = "05/01/2015",1,DAYS(A2,"05/01/2015")+1)

  1. 有更简单的方法吗?
  2. 我目前必须对第一个条目使用一个公式,对对应于 'Id' 的其他条目使用另一个公式,这使得它很难传播到整个 table。有我可以使用的单一公式吗?

SQL 部分

我正在使用这样的查询 -> select distinct convert (date, CreatedTime) as CreatedTime, Id from database.table where createdtime between '2015-05-01 00:00:00' and '2015-05-15 23:59:59' order by Id, CreatedTime

  1. 那么,有没有更简单的方法通过更改查询来获得我想要的内容?

excel 中的一种解决方案,只在所有行中使用一个公式:
=IF(A2 = "05/01/2015",1,DAYS(A2,IF(B2=B1,"04/30/2015",A1))