This time we’re going bigger than ever. Fabric, Power BI, SQL, AI and more. We're covering it all. You won't want to miss it.
Learn moreDid you hear? There's a new SQL AI Developer certification (DP-800). Start preparing now and be one of the first to get certified. Register now
Hello,
Can someone explain, why this does not work ;
= let alist =
{2,3,4,2,2,3,4,2,2,3,3,2,3,2,2,3,3,4,2,2,3,4}
in
List.Accumulate( alist, {} , (s,c)=> s & { List.Last(s)?? 0 + c } )
but this does, I presume order of operations, but I'd like a bit more help than that please,
let alist =
{2,3,4,2,2,3,4,2,2,3,3,2,3,2,2,3,3,4,2,2,3,4}
in
List.Accumulate( alist, {} , (s,c)=>
let x = List.Last(s) ?? 0
i n s & { x + c } )
Richard.
Solved! Go to Solution.
The operator ?? has the lowest precedence, so "List.Last(s) ?? 0 + c" is equivalent to "List.Last(s) ?? (0 + c)"
The operator ?? has the lowest precedence, so "List.Last(s) ?? 0 + c" is equivalent to "List.Last(s) ?? (0 + c)"
Thanks, I thought more complex ; re wrtoe to
= let alist = {2,3,2,3,2,3,3,3,2,3,3,4,2,2}
in
List.Accumulate( alist, {} , (s,c)=>
s & { ( List.Last(s)??0 ) + c } )
yes, pretty much. You need to protect the coalesce from the addition.
let
alist = {2, 3, 4, 2, 2, 3, 4, 2, 2, 3, 3, 2, 3, 2, 2, 3, 3, 4, 2, 2, 3, 4}
in
List.Accumulate(alist, {}, (s, c) => s & {(List.Last(s) ?? 0) + c})
Check out the April 2026 Power BI update to learn about new features.
Sign up to receive a private message when registration opens and key events begin.
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.