Oracle SQL:使用COUNT()>;1当组合两个CASE-When语句时

Oracle SQL:使用COUNT()>;1当组合两个CASE-When语句时,sql,count,case,Sql,Count,Case,我有一行SQL,它生成一个购买计数变量 count(distinct case when t.transaction_sub_type =1 then t.transaction_date end) as COUNTPUR, 我需要对此进行修改,以便生成一个0/1标志变量,该变量用于标记客户是否是重复购买者。因此,当客户的购买量大于1时,则标记为1,否则标记为0 case when COUNTPUR>1 then 1 else 0 end as FLAG_REPEATPURCHASER

我有一行SQL,它生成一个购买计数变量

count(distinct case when t.transaction_sub_type =1 then t.transaction_date end) as COUNTPUR, 
我需要对此进行修改,以便生成一个0/1标志变量,该变量用于标记客户是否是重复购买者。因此,当客户的购买量大于1时,则标记为1,否则标记为0

case when COUNTPUR>1 then 1 else 0 end as FLAG_REPEATPURCHASER
我需要将这两个案例陈述合并为一个。我一直在尝试不同版本的语法,但我似乎无法确定它。下面是一个不起作用的实验

 max(case when (count(distinct case when t.transaction_sub_type =1 then t.transaction_date end))>1 then 1 else 0 end) as  FLAG_REPEATPURCHASER,

提前感谢您的帮助

您可以使用带有条件聚合的
案例
表达式:

(case when count(distinct case when t.transaction_sub_type = 1 then t.transaction_date end) > 1
      then 1 else 0
 end) as FLAG_REPEATPURCHASER

对不起,我只是删除了上面的评论。它起作用了。谢谢