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
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.

Power BI Carousel June 2024

Power BI Monthly Update - June 2024

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

PBI_Carousel_NL_June

Fabric Community Update - June 2024

Get the latest Fabric updates from Build 2024, key Skills Challenge voucher deadlines, top blogs, forum posts, and product ideas.