SQL日期计算
问题描述:
需要一些帮助进行SQL日期计算:SQL日期计算
在表格中,我有18岁以上的病人死于某种疾病(表a)。在另一张表格中,我有患同一种疾病的患者和他们被诊断患有这种疾病的最早日期(表b)。
我需要知道的是自从他们被诊断以及他们死亡12个月后。
有人可以帮助我执行这个日期计算。
对于日期,表a中的列是indexdate,列b中的死亡列是死亡时的列。
感谢所有帮助
表A:
patientid--age--deathdate
1 20 11/05/2016
2 19 10/09/2015
表B:
PatientID--indexdate
1 01/02/2015
2 08/03/2014
所以基本上我要的是检查是否12个月indexdate和deathdate之间传递。
答
这给出了自诊断和死亡12个月后患者的名单。
SELECT A.patientID, A.patientName
FROM tableA A
INNER JOIN
(
SELECT patientID , MIN(DiagnoseDate) As EarliestDate
FROM tableB
GROUP BY patientID
) As B
ON A.patientID = B.patientID
WHERE date_part('month',age(EarliestDate, DeathDate)) >=12
林不知道你想要什么..你能请张贴你的表像吗? – Sk1X1
你能否提供表格定义和一个示例查询---可能不完整---表明你想得到什么。对于单个病人?对于单一疾病?如何识别诊断?等等 –
重复:http://*.com/questions/17833176/postgresql-days-months-years-between-two-dates – McNets