表:计算天的差距
+-----------+--------------+------------+------------+ | RequestID | RequestStaus | StartDate | EndDate | +-----------+--------------+------------+------------+ | 1 | pending | 9/1/2015 | 10/2/2015 | | 1 | in progress | 10/2/2015 | 10/20/2015 | | 1 | completed | 10/20/2015 | 11/3/2015 | | 1 | reopened | 11/3/2015 | null | | 2 | pending | 9/5/2015 | 9/7/2015 | | 2 | in progress | 9/7/2015 | 9/25/2015 | | 2 | completed | 9/25/2015 | 10/7/2015 | | 2 | reopened | 10/10/2015 | 10/16/2015 | | 2 | completed | 10/16/2015 | null | +-----------+--------------+------------+------------+
我想计算打开了天,但排除天之间完成并重新开放。例如,RequestID 1的开放日期为(2015年3月11日 - 2015年9月9日)+(GetDate() - 11/3/2015),对于请求2,总天数为/ 2015 - 9/5/2015)+(2015/10/16 - 10/10/2015)。
我想会是这样的结果:
+-----------+-------------------------------+ | RequestID | DaysOpened | +-----------+-------------------------------+ | 1 | 63 + (getdate() - 11/3/2015) | | 2 | 38 | +-----------+-------------------------------+
我该如何解决这个问题?谢谢!
你永远不会完成你的榜样 - 你所期望的结果为ID 1和2? – Hogan
根据你的问题,对于RequestID 1,数据应该是(11/3/2015 - 9/1/2015)+(GetDate() - 11/3/2015)。不是吗? –
@ Dance-Henry,是的,先生! – Meidi