Forum Discussion
PowerQuery - Checking if Value in one column appears in a different columan
I am trying to create a column in power query when checking to see if the value in column 'C' resides in column 'B'. Example table below
| Column A | Column B | Column C | New Column |
| 1234 | test | 2323 | null |
| 4321 | kdjkdf | 1234 | 1234 |
| 8939 | dkikdi | 1234 | 1234 |
| 383738 | ueuj | 8939 | 8939 |
This data set currently has over 200,000 rows. I have tried "List.Contains(TableName Column C, Column A)" in the query editor but does not give the correct in puts.
3 Replies
- wdx223_DanielCommunity Champion
=let a=List.Buffer(TableName[ColumnA]) in Table.AddColumn(TableName,"NewColumn",each if List.Contains(a,[ColumnC] then [ColumnC] else null)
- _AAndradeResident Rockstar
Hi jj101,
Please try this code:let Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("TYoxDsAgDAP/kpmFGKnhLShbqAQZC/9vytTJPp9bo8wolGj1Z0UwGKSpUQHnYLfpdkc5t09IRQ02H27jLyC4ILHsvmfEOaq+", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"Column A" = _t, #"Column B" = _t, #"Column C" = _t]), ChangedType = Table.TransformColumnTypes(Source,{{"Column A", Int64.Type}, {"Column B", type text}, {"Column C", Int64.Type}}), ListColumnA = Table.Column(Source, "Column A"), AddCustomColumn = Table.AddColumn(Source, "New Column", each if List.Contains(ListColumnA, [Column C]) then [Column C] else null) in AddCustomColumnI'm attaching a pbix file as well.
- jj101Frequent Visitor
So when I tried this I receive "PreviewError: The type of the current preview is too complex to display." I have gone in and tried to convert the column to a list and when I do that it basically removes all of the rest of the columns.
I should note that this source is a database.