繁体   English   中英

使用 SQL 查找更换医疗服务地点的客户

[英]Find customers who switched where they received medical care using SQL

我想确定那些最近在两年内更换了接受医疗服务的客户。 我想找到两年内每个客户的最后两笔交易,其中诊断代码相同服务站点不同

例如,成员 1 在两年内多次访问他们的医生办公室和门诊设施,但我只对最后两次他们为相同诊断代码切换服务站点的交易感兴趣。

例如,我的数据结构如下:

MEMBER_ID DIAGNOSIS_CD  DATE        SITE_OF_SERVICE
1         A             April       Physician
1         A             May         Physician
2         A             May         Home Infusion
1         B             May         Physician
1         A             July        Outpatient
1         A             August      Physician
1         A             September   Physician
1         A             October     Outpatient

解决此问题的任何帮助将不胜感激。

我正在使用 Sybase IQ。

您可以使用:

select
  member_id
from (
  select
    *,
    row_number() 
      over (partition by member_id, diagnosis_cd order by date desc) as rn
  from t
) x
where rn <= 2
group by member_id
having min(site_of_service) <> max(site_of_service)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM