Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Grow your Fabric skills and prepare for the DP-600 certification exam by completing the latest Microsoft Fabric challenge.

Reply
Kim_Sky
Helper II
Helper II

Sums row data / substrate and new table

Hi, 

I have two set of data 

Data1 : Total used 

TimestampValue
5/6/2250
5/6/2250
7/6/2260
7/6/2270
7/6/2280

 

Data 2: Each stream

TimestampStreamValue
5/6/22110
5/6/22120
7/6/22123
7/6/22120
7/6/22150
5/6/22215
5/6/22215
7/6/22215
7/6/2226
7/6/22220

 

The output table should be Stream 3. Value = total -stream 1-stream 2

Timestamp Value
5/6/2240
7/6/2276

 

Thanks for your help. Really appreciate it. 

1 ACCEPTED SOLUTION
jbwtp
Memorable Member
Memorable Member

Hi @Kim_Sky,

 

Something like this:

let
    Streams = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMtU3MNM3MjAyUtJRMgRhA6VYHUxhI4iwObqwMXZh7KpNMc0GS5niEzYnTtgMqyjIIbEA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Timestamp = _t, Stream = _t, Value = _t]),
    Totals = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMtU3MNM3MjAyUtJRMjVQitXBKmSOJGSGKWSOKWQBFIoFAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Timestamp = _t, Value = _t]),
    ReverseSignonStreams = Table.TransformColumns(Streams, {"Value", each Number.From(_) * -1}),
    Combine = Table.Combine({Totals, ReverseSignonStreams}),
    #"Changed Type" = Table.TransformColumnTypes(Combine,{{"Value", type number}}),
    Output = Table.Group(#"Changed Type", {"Timestamp"}, {{"Value", each List.Sum([Value]), type nullable number}})
in
    Output

 

Kind regards,

John

View solution in original post

2 REPLIES 2
jbwtp
Memorable Member
Memorable Member

Hi @Kim_Sky,

 

Something like this:

let
    Streams = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMtU3MNM3MjAyUtJRMgRhA6VYHUxhI4iwObqwMXZh7KpNMc0GS5niEzYnTtgMqyjIIbEA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Timestamp = _t, Stream = _t, Value = _t]),
    Totals = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMtU3MNM3MjAyUtJRMjVQitXBKmSOJGSGKWSOKWQBFIoFAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Timestamp = _t, Value = _t]),
    ReverseSignonStreams = Table.TransformColumns(Streams, {"Value", each Number.From(_) * -1}),
    Combine = Table.Combine({Totals, ReverseSignonStreams}),
    #"Changed Type" = Table.TransformColumnTypes(Combine,{{"Value", type number}}),
    Output = Table.Group(#"Changed Type", {"Timestamp"}, {{"Value", each List.Sum([Value]), type nullable number}})
in
    Output

 

Kind regards,

John

KT_Bsmart2gethe
Impactful Individual
Impactful Individual

Hi @Kim_Sky ,

 

I created a blank query for the output. See below outcome and code:

KT_Bsmart2gethe_0-1660082963390.png

 

Regards

KT

Helpful resources

Announcements
Europe Fabric Conference

Europe’s largest Microsoft Fabric Community Conference

Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.

RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

Top Solution Authors
Top Kudoed Authors