Thursday, May 30, 2013

Number of days patient was on ventilator

Try this. This takes care of non contiguous dates too.



declare @Tbl table (patent_id int, visit_id int, [name of PR] nvarchar(100),ventilator_StartDate datetime, ventilator_StopDate datetime)
insert into @Tbl values(1,100,'Adult Ventilator','02/05/2013','02/07/2013')
insert into @Tbl values(1,100,'Adult Ventilator','02/09/2013','02/10/2013')
insert into @Tbl values(3,100,'Adult Ventilator','02/05/2013','02/11/2013')
insert into @Tbl values(3,100,'Adult Ventilator','02/11/2013','02/11/2013')
insert into @Tbl values(4,100,'Adult Ventilator','01/18/2013','01/20/2013')
insert into @Tbl values(4,100,'Adult Ventilator','01/20/2013','01/23/2013')
------------------------

select patent_id, visit_id, [name of PR]
, case when ventilator_StartDate = ventilator_StopDate then 1 else datediff(d,ventilator_StartDate,ventilator_StopDate)+1 end Days
from @Tbl




No comments:

Post a Comment