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

获取特定月份放款客户按应用维度的地域信息SQL查询问题

解决重复申请客户地域信息NULL的问题

问题原因

重复申请的客户后续记录里STATE为NULL,是因为服务商只在首次申请时采集地域信息,后续申请不再重复获取。我们需要把每个客户的有效地域信息,填充到他所有的申请记录里。

修改后的SQL

方法一:用窗口函数(推荐,简洁高效)

select top 100
    C.contactid,
    C.TSIApplicationId,
    FIRST_VALUE(PD.state) OVER (PARTITION BY C.ContactId ORDER BY C.CreatedOn) as STATE
from [DH].[Customer] as C
inner join [DH].[parsed_details] as PD
    on C.ContactId = PD.ContactId
where C.availed = 1
    and C.CreatedOnMonth = '2023-04' 

这个写法用FIRST_VALUE窗口函数,按客户ID分组,按申请时间排序,把每组里第一个非空的STATE值,自动填充到该客户的所有记录中。

方法二:子查询关联(兼容更多数据库)

如果你的数据库不支持窗口函数,可以用子查询先提取每个客户的有效地域信息,再关联回去:

select top 100
    C.contactid,
    C.TSIApplicationId,
    CusState.state as STATE
from [DH].[Customer] as C
inner join [DH].[parsed_details] as PD
    on C.ContactId = PD.ContactId
inner join (
    -- 先找出每个客户的非空STATE(同一客户只有一个有效值,max/min都可以)
    select ContactId, max(state) as state
    from [DH].[parsed_details]
    where state is not null
    group by ContactId
) CusState on C.ContactId = CusState.ContactId
where C.availed = 1
    and C.CreatedOnMonth = '2023-04' 

效果说明

修改后,不管是首次还是重复申请的记录,都会显示该客户对应的地域信息,和你期望的输出一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 11:21:35