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
I have a historical data set that was not properly joined. I am unable to fix this and I must use this data set. Here is an example of what it looks like:
| Address | Current Owner | Last Owner | Legal Description |
| 1600 Pennsylvania Avenue NW, Washington, DC 20500 | Joe Biden | ||
| 1600 Pennsylvania Avenue NW, Washington, DC 20500 | Donald Trump | ||
| 1600 Pennsylvania Avenue NW, Washington, DC 20500 | White House |
So in the example, I have three rows that all have only one column of data for that address. I am trying to merge rows with the same address to fill all the nulls. I have some addresses that have up to 20 duplicates. Is there any way I can do this in power query?
Solved! Go to Solution.
Good day juliannegibson,
This code,
This may or may not help as there is room for other interpretations of your post.
Anyhow, hope this helps
The key step is called #"Grouped Rows". The previous steps are just getting to the point where it is as if I had loaded your data.
let
Source = Table.FromRows(
Json.Document(
Binary.Decompress(
Binary.FromText(
"i45WMjQzMFAISM3LK67MKUvMy0xUcCxLzStNVfAL11EITyzOyMxLL8nP01FwcVYwMjA1MFDSUfLKT1VwykxJzQOyFcA4Voc8k0C6XfLzEnNSFEKKSnMLKDYMhMMzMktSFTzyS4tTlWJjAQ==",
BinaryEncoding.Base64
),
Compression.Deflate
)
),
let
_t = ((type nullable text) meta [Serialized.Text = true])
in
type table [Address = _t, #"Current Owner" = _t, #"Last Owner" = _t, #"Legal Description" = _t]
),
#"Changed Type" = Table.TransformColumnTypes(
Source,
{
{"Address", type text},
{"Current Owner", type text},
{"Last Owner", type text},
{"Legal Description", type text}
}
),
#"Grouped Rows" = Table.Group(
#"Changed Type",
{"Address"},
{
{"Current Owner", each List.Max([Current Owner]), type nullable text},
{"Last Owner", each List.Max([Last Owner]), type nullable text},
{"Legal Description", each List.Max([Legal Description]), type nullable text}
}
)
in
#"Grouped Rows"
yielding...
Good day juliannegibson,
This code,
This may or may not help as there is room for other interpretations of your post.
Anyhow, hope this helps
The key step is called #"Grouped Rows". The previous steps are just getting to the point where it is as if I had loaded your data.
let
Source = Table.FromRows(
Json.Document(
Binary.Decompress(
Binary.FromText(
"i45WMjQzMFAISM3LK67MKUvMy0xUcCxLzStNVfAL11EITyzOyMxLL8nP01FwcVYwMjA1MFDSUfLKT1VwykxJzQOyFcA4Voc8k0C6XfLzEnNSFEKKSnMLKDYMhMMzMktSFTzyS4tTlWJjAQ==",
BinaryEncoding.Base64
),
Compression.Deflate
)
),
let
_t = ((type nullable text) meta [Serialized.Text = true])
in
type table [Address = _t, #"Current Owner" = _t, #"Last Owner" = _t, #"Legal Description" = _t]
),
#"Changed Type" = Table.TransformColumnTypes(
Source,
{
{"Address", type text},
{"Current Owner", type text},
{"Last Owner", type text},
{"Legal Description", type text}
}
),
#"Grouped Rows" = Table.Group(
#"Changed Type",
{"Address"},
{
{"Current Owner", each List.Max([Current Owner]), type nullable text},
{"Last Owner", each List.Max([Last Owner]), type nullable text},
{"Legal Description", each List.Max([Legal Description]), type nullable text}
}
)
in
#"Grouped Rows"
yielding...
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.