我有非常艰巨的任务,我不知道如何开始。
假设我们有表格:
Car
- CarId (int)
- OperatorId (int)
- ProductionDate (date)
Person
- PersonId (int)
- Name (vchar)
CarRentHistory
- HistoryId (int)
- CarFk (int)
- OperatorFk (int)
- ChangeDate (date)
每辆车都是租来的。它的生产日期是它被租用的第一次。
一个人可以多次租用同一辆车,但每辆车在一瞬间只能有一个操作员。
问题是如何为每个人和每辆车(按人和车分组)平均租金时间选择数据。
Example:
Person1:
- PersonId = 1,
- Name = Bill,
Person2:
- PersonId = 2,
- Name = Max,
Car1:
- CarId = 1,
- Operator = 1,
- ProductionDate = 2013/1/1,
CarRentHistory:
- HistoryId=1, CarFk=1, OperatorFk=1, Date = 2013/1/1
- HistoryId=2, CarFk=1, OperatorFk=2, Date = 2013/2/2
- HistoryId=3, CarFk=1, OperatorFk=1, Date = 2013/3/3
所以 Car 是在 2013 年 1 月 1 日由 Person1 (按生产)租用的,然后在一个月后 Person2 租了它(2013 年 2 月 2 日)。
结果应该是这样的:
比尔,Car1,平均值 = ( (2013/2/2 - 2013/1/1) + (NOW - 2013/3/3))/2
Max, Car1, Average = (2013/3/3 - 2013/2/2) / 1
请帮忙, :(