Crystal reports 用于显示多个值的公式

Crystal reports 用于显示多个值的公式,crystal-reports,crystal-reports-2008,Crystal Reports,Crystal Reports 2008,试图找到一个公式,让我可以显示某些值 例如: 我想看看阿司匹林和华法林,还有(接下来3个值中的一个或多个)氯吡格雷、普拉格雷或替卡格雷 患者1需要: 阿斯匹林 华法林 氯吡格雷 患者2服用: 阿司匹林 华法林 现在我看到的是患者1和患者2,我只想看到患者1显示了3种不同的药物 请提前帮助并感谢您。我使用的是crystal reports 2008。我建议在SQL select子句中添加以下内容: count(distinct case when medication in ('Aspirin',

试图找到一个公式,让我可以显示某些值

例如:

我想看看阿司匹林和华法林,还有(接下来3个值中的一个或多个)氯吡格雷、普拉格雷或替卡格雷

患者1需要:

阿斯匹林 华法林 氯吡格雷

患者2服用: 阿司匹林 华法林

现在我看到的是患者1和患者2,我只想看到患者1显示了3种不同的药物


请提前帮助并感谢您。我使用的是crystal reports 2008。

我建议在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中获得类似的结果:

  • 将报告按患者分组
  • 创建一个名为强制性药物的水晶配方,配方如下:
    如果{myTable.medicing}=“阿司匹林”或{myTable.medicing}=“华法林”

    然后{myTable.medicing}
  • 创建一个名为可选药物的水晶配方,配方如下:
    如果{myTable.medicing}=“氯吡格雷”或{myTable.medicing}=“普拉格雷”

    或{myTable.medicing}=“替卡格雷”然后{myTable.medicing}
  • 将一个条件添加到选择公式中,如:
    DistinctCount({@mandatory\u meds})=2和DistinctCount({@optional\u meds})>=1

您是否在寻找选择公式,以便报告仅返回符合指定条件的患者?另外,您是否从关系数据源进行报告,如果是,它是哪个RDBMS(SQLServer、Oracle、MySQL等)?(这种类型的选择可以在Crystal中完成,但在SQL中更容易,也可能更有效。)选择公式我们使用Oracle作为数据源。还有什么公式不是SQL。只是希望能够有选择。我已经更新了我的答案,以展示如何在Crystal中实现这一点,而无需修改SQL。谢谢Mark Bannister