How to get Previous Value for Null Values

后端 未结 5 951
粉色の甜心
粉色の甜心 2020-12-01 19:02

I have the Below Data in my Table.

   | Id  |  FeeModeId   |Name        |   Amount|
   ---------------------------------------------
   | 1   |  NULL                 


        
5条回答
  •  鱼传尺愫
    2020-12-01 19:11

    Please try:

    select 
        a.ID,
        ISNULL(a.FeeModeId, x.FeeModeId) FeeModeId,
        ISNULL(a.Name, x.Name) Name,
        a.Amount
    from tbl a
    outer apply
    (select top 1 FeeModeId, Name 
        from tbl b 
        where b.ID

    OR

    select 
        ID,
        ISNULL(FeeModeId, bFeeModeId) FeeModeId,
        ISNULL(Name, bName) Name,
        Amount
    From(
        select 
            a.ID , a.FeeModeId, a.Name, a.Amount, 
            b.ID bID, b.FeeModeId bFeeModeId, b.Name bName,
            MAX(b.FeeModeId) over (partition by a.ID) mx
        from tbl a left join tbl b on b.ID

提交回复
热议问题