我正在使用sql Server
我需要知道患者接受治疗的天数.
问题是我只能获得一个startDate但不能获得endDate
当我运行查询并通过StartDate订购时,我得到这样的东西:
我需要知道患者接受治疗的天数.
问题是我只能获得一个startDate但不能获得endDate
当我运行查询并通过StartDate订购时,我得到这样的东西:
StartDate 2012-10-11 22:00:00.000 2012-10-11 23:10:31.000 2012-10-12 00:28:31.000 2012-10-12 01:39:01.000 2012-10-12 02:09:01.000 2012-10-12 03:39:01.000 2012-10-12 04:38:50.000 2012-10-20 06:00:00.000 2012-10-20 08:06:05.000 2012-10-20 10:21:55.000 2012-10-21 14:13:01.000 2012-10-21 15:13:01.000
我得到的答案是4天(第11天,第12天,第20天和第21天)
治疗在2012-10-12停止,并在2012-10-20开始新的治疗
尽管没有endDate,我如何总结患者获得治疗的日子?
谢谢,
Loperam
解决方法
SELECT COUNT(StartDate) AS treatmentDays FROM ... WHERE ... GROUP BY CAST(StartDate as date)
基本上,将日期/时间值转换为日期,对该日期值进行分组,然后计算有多少日期/时间值.分组会将重复的日期合并为一个,因此您应该得到4作为样本数据的答案.