嵌套条件聚合

问题描述

我正在编写一个SQL查询来收集贷款数据集的摘要统计信息。我希望获得发生的第一笔非零付款和账面月额(mob)。但是,由于sql的限制,我不能使用mob=initial_payment_mob_nz,所以我试图将表达式复制到定义initial_payment_amount_nz的case语句中。

我想知道嵌套条件聚合是否可行(以及如何相应地构建查询)。我可以创建一个单独的查询,然后加入该查询,但是鉴于我正在使用的数据集,这在计算上会非常昂贵。如果我可以保持在当前查询的约束范围内,那将是理想的选择。

预先感谢

SELECT
    primary_key,...,MIN(
        CASE WHEN monthly_payment_amount > 0 
        THEN mob ELSE null END)
        AS initial_payment_mob_nz,CASE WHEN(
        mob=MIN(
                CASE WHEN monthly_payment_amount > 0 
                THEN mob ELSE NULL END) 
            THEN monthly_payment_amount ELSE NULL END) 
        AS initial_payment_amount_nz
FROM
    table
GROUP BY 
    primary_key

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...