我想从下表中选择patient_id和日期差异:
p_id TreatmentDate
15 2008-05-01
15 2008-05-03
15 2008-05-05
15 2008-05-07
16 2008-05-01
16 2008-05-03
16 2008-05-05
16 2008-05-09
16 2008-05-11
17 2008-05-03
17 2008-05-05
17 2008-05-07
Run Code Online (Sandbox Code Playgroud)
我希望得到这样的结果:
p_id Day Difference
15 6 Days
16 10 Days
17 4 Days
Run Code Online (Sandbox Code Playgroud)
你有任何可以在sql语句中生成这个结果的报价吗?
这应该是一般的
select p_id, max(TreatmentDate) - min(TreatmentDate) from
patientsTable group by p_id
Run Code Online (Sandbox Code Playgroud)
更具体地说,对于MSSQL Server
select p_id, DATEDIFF(D, MIN(TreatmentDate), MAX(TreatmentDate)) from
patientsTable group by p_id
Run Code Online (Sandbox Code Playgroud)