【发布时间】:2016-11-03 16:30:09
【问题描述】:
我对当前的报告问题感到有些困惑,希望能得到一些帮助。
一位医生即将退休。她的病人需要被告知她的退休。在过去两年中,构成“她的病人”的人比其他任何医生都看她的次数更多。如果做不到这一点(即在过去 2 年中分别看过她和另一位医生 2 次),如果他们最近去看她,他们就是“她的病人”。
这是我目前所拥有的。
select patient_id, last_name, first_name, post_fromdate, performing_md_id, performing_md_name, category_desc, procedure_code
from [table]
where post_fromdate >= ADD_MONTHS(SYSDATE,-24)
and category_desc like '%WELL%' --specific visit type
and patient id in ([list of patients])
group by patient_id, last_name, first_name, post_fromdate, performing_md_id, performing_md_name, category_desc, procedure_code
order by patient_id, post_fromdate desc
回顾一下……
我所拥有的:每位医生就诊的每位患者的清单,包括对其他医生的就诊。
我所寻求的:一些额外的标准将表明退休医生是否被每位患者访问的次数最多。如果与给定患者的其他医生看到的相同但不少于其他医生,那么如果退休医生最近就诊。
我们欣然接受任何帮助。提前谢谢你。
编辑:将输出所需的结果,为我提供 select 子句中的信息,每个 Patient_id 有一个且只有一个 perform_md_id 表示该患者的医生(他们在过去两年中看过最多次数的医生。如果不是那个,然后是他们最近看过的医生)。
【问题讨论】:
-
发布您的架构、一些示例数据和所需的结果。
-
您需要在查询中有 count(visits) - 发布相关表的架构。
-
这就是灾难:这一切都在一张桌子上。这个数据库系统一直是创可贴的解决方案。即使是这里的生活者也不知道任何信息的位置。
-
我不明白编辑...我以为退休的医生是众所周知的,你需要知道所有让他作为“主要”医生的病人。 EDIT 说的是别的东西——你想为所有病人确定主治医生。这与您最初的问题有什么关系? (或者你认为这是解决你原来问题的唯一方法吗?)