试图找到一个允许我显示某些值的公式。
示例:
我想看看阿司匹林和华法林以及(接下来的3个值中的一个或多个)氯吡格雷或普拉格雷或替卡格雷。
Patient1需要:
阿司匹林 华法林 Clopidgrel
患者2服用: 阿司匹林 华法林
目前我正在看病人1和病人2,我只想看病人1的病人,他们会看到3种不同的药物。
请提前帮助并表示感谢。我正在使用2008年的水晶报告。
答案 0 :(得分:1)
我建议在SQL select子句中添加如下行:
count(distinct case when medication in ('Aspirin', 'Warfarin')
then medication end)
over (partition by patient) as mandatory_meds,
count(distinct case when medication in ('Clopidogrel', 'Prasugrel', 'Ticagrelor')
then medication end)
over (partition by patient) optional_meds,
- 然后将以下条件添加到SQL where子句:
and mandatory_meds = 2 and optional_meds >= 1
或者,您可以通过以下方式在Crystal中获得类似的结果:
if {myTable.medication} = "Aspirin" or {myTable.medication} = "Warfarin"
then {myTable.medication}
if {myTable.medication} = "Clopidogrel" or {myTable.medication} = "Prasugrel"
or {myTable.medication} = "Ticagrelor" then {myTable.medication}
DistinctCount({@mandatory_meds})=2 and DistinctCount({@optional_meds})>=1