You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle基于条件关联两表并分组,补全贷款类型维度数据查询需求

Oracle SQL实现方案

实现逻辑

  • 第一步:从Table1中去重提取所有Bank、Category、Month_Year的维度组合
  • 第二步:将上述维度组合与Table2的全量Bank、Loan_Type数据按Bank字段关联,得到所有需要输出的维度行
  • 第三步:左关联Table1的原始业务数据,用NVL函数将未匹配到的Outstanding值填充为0

完整SQL语句

SELECT
    dim.Bank,
    dim.Category,
    dim.Month_Year,
    dim.Loan_Type,
    NVL(t1.Outstanding, 0) AS Outstanding
FROM
    (
        -- 生成所有需要的维度组合
        SELECT
            d.Bank,
            d.Category,
            d.Month_Year,
            t2.Loan_Type
        FROM
            (SELECT DISTINCT Bank, Category, Month_Year FROM Table1) d
        INNER JOIN Table2 t2
            ON d.Bank = t2.Bank
    ) dim
LEFT JOIN Table1 t1
    ON dim.Bank = t1.Bank
    AND dim.Category = t1.Category
    AND dim.Month_Year = t1.Month_Year
    AND dim.Loan_Type = t1.Loan_Type
ORDER BY
    dim.Category,
    dim.Month_Year,
    dim.Loan_Type;

说明

  • 上述语句的排序逻辑与你给出的预期结果排序一致,可根据实际需求调整排序字段
  • 多银行场景下关联逻辑也可以正常适配,无需额外修改

内容的提问来源于stack exchange,提问作者ABR

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 02:57:02