具有多个当时标准的案例陈述

Case Statement with multiple criteria for the then

好的,我正在写一个表达式 - 这是一个 case 语句。我想要的是,如果 G.EMAIL 字段中没有电子邮件地址,那么我想要 Q.EMAIL_ADDR 中的电子邮件地址 - 但只有 [=40] 中的 'OTHR' =].

现在我的案例陈述如下所示:

(CASE WHEN G.EMAILID is NULL THEN Q.EMAIL_ADDR AND 'OTHR' ELSE G.EMAILID END)

这可能搞砸了。我正在使用 PeopleSoft 查询管理器——因为它是我唯一可以访问的报告工具。在另一份报告的条件选项卡上,这是 Q.EMAIL_ADDR table 条件的设置方式。

我正在添加查询记录选项卡:

在上面,field/column 是 EMAIL_ADDR,条件 ('OTHR') 在 E_ADDR_TYPE 字段中。

可能是这样的:coalesce(g.email, q.email_Addr) 但我不确定 peoplesoft-query 是否支持这样的直接 SQL 语句。

请记住合并将 return 系列中遇到的第一个 non-null 值

coalesce(NULL,NULL,NULL,'BOB','Tim') = BOB
coalesce(NULL,'Tim','BOB','Kate') = Tim