基本上我有一个以下帐户的发票行,如下所示:
BillID AccountID BilledFrom BillTo Days Price
38 3456 10/10/2012 10/11/2012 30 86p
39 3456 11/11/2012 11/12/2012 30 87p
40 3456 12/12/2012 30/12/2012 18 81p
用户想为部分日期范围向客户退款,因此用户需要输入一个日期从和日期到日期:
Date From: 18/10/2012 DateTo: 14/12/2012
这将导致信用额度在计算出每条线路的天数和价格后退还给客户。我需要返回每一行并显示截止点。如您所见,输入的范围跨越 3 个发票行。
需要的结果是:
BillID AccountID BilledFrom BillTo RangeStart RangeEnd Days Price
38 3456 10/10/2012 10/11/2012 18/10/2012 10/11/2012 22 86p
39 3456 11/11/2012 11/12/2012 11/11/2012 11/12/2012 30 87p
40 3456 12/12/2012 30/12/2012 11/11/2012 11/12/2012 2 81p
结果基本上会带回最初的适用发票行,但会计算出该范围如何适合并根据输入日期范围的账单起始日期和账单截止日期计算天数。
我需要 SQL 中的一个函数来提供这个结果。任何帮助,将不胜感激。先感谢您。