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

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

Reply
kmatveyko
Frequent Visitor

Table.Distinct with the condition in PowerQuery

Hi,

 

I have a problem with PowerQuery. So, I need to apply Distinct function in my table.

 

But with one condition: repeatable values should be deleted if their value is greater than 0.

 

Please help me to write a fuction on PowerQuery M. Maybe it's possible to use IF-expression?

 

Example, if 'ID'>0 then Table.Distinct(#"", {"ID"}) else 0.

 

Thanks!

 

1 ACCEPTED SOLUTION

this should work

Table.FromRows(List.Distinct(Table.ToRows(Source),each if _{0}=0 then Text.NewGuid() else _{0}))

View solution in original post

3 REPLIES 3
amitchandak
Super User
Super User

@kmatveyko , I think you need first filter the values and then take distinct

Not quite. For example, here is a column:

0
0
20155

20156

20157
20157
20157
0
20158
20159

 

Needs to delete duplicated values 20157 (two times). Nulls should stay in a column as they are.

 

Here is a required result:

0
0
20155
20156
20157
0
20158
20159

 

this should work

Table.FromRows(List.Distinct(Table.ToRows(Source),each if _{0}=0 then Text.NewGuid() else _{0}))

Helpful resources

Announcements
July 2024 Power BI Update

Power BI Monthly Update - July 2024

Check out the July 2024 Power BI update to learn about new features.

July Newsletter

Fabric Community Update - July 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors