Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!View all the Fabric Data Days sessions on demand. View schedule
Hi all,
Apologies if this has been asked before I have a database which I access which has codes to replace data. As a reference it contains another table which has a list of the codes used and where they are used, and a separate table with what the codes mean. What I'm looking for is a way to replace the codes with their meanings. I've put some sample data below, which will hopefuly make it a bit clearer! Annoyingly none of the codes or the column names are unique!
Customer Table:
| Name | Member_Status | Address_type |
| Jim | AA | AA |
| Steve | AB | AA |
| Lisa | AA | AB |
| Greg | AC | AB |
| Amy | AC | AA |
Code Location Table:
| CVTname | tablename | columnname |
| Memberstatus | CustomerFact | Member_Status |
| addressused | CustomerFact | Address_type |
| Memberstatus | AccountFact | Account_Status |
Code Definition Table:
| CVTname | Key | Decription |
| Memberstatus | AA | Active |
| Memberstatus | AB | Suspended |
| Memberstatus | AC | Inactive |
| addressused | AA | Home |
| addressused | AB | Work |
Desired Output (from Customer Table):
| Name | Member_Status | Address_type |
| Jim | Active | Home |
| Steve | Suspended | Home |
| Lisa | Active | Work |
| Greg | Inactive | Work |
| Amy | Inactive | Home |
Any help is much appreciated
Thanks,
Simon
Solved! Go to Solution.
Hello @Stex85 ,
I am assuming that you have 'N' number of columns like this and you need to add information.
Please follow below steps-
Step 1- Add custom column in Code Defination table using below code-
#"Inserted Merged Column" = Table.AddColumn(#"Changed Type", "Merged", each Text.Combine({[CVTname], [Key]}), type text),
#"Renamed Columns" = Table.RenameColumns(#"Inserted Merged Column",{{"Merged", "MergeKey"}})
in
#"Renamed Columns"
Step 2-
Add below transformation in your customer table-
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Name", type text}, {"Member_Status", type text}, {"Address_type", type text}}),
#"Unpivoted Columns" = Table.UnpivotOtherColumns(#"Changed Type", {"Name"}, "Attribute", "Value"),
#"Merged Queries" = Table.NestedJoin(#"Unpivoted Columns", {"Attribute"}, #"Code Location", {"columnname"}, "Code Location", JoinKind.LeftOuter),
#"Expanded Code Location" = Table.ExpandTableColumn(#"Merged Queries", "Code Location", {"CVTname"}, {"Code Location.CVTname"}),
#"Added Custom" = Table.AddColumn(#"Expanded Code Location", "Custom", each [Code Location.CVTname]&[Value]),
#"Merged Queries1" = Table.NestedJoin(#"Added Custom", {"Custom"}, #"Code Definition", {"MergeKey"}, "Code Definition", JoinKind.LeftOuter),
#"Expanded Code Definition" = Table.ExpandTableColumn(#"Merged Queries1", "Code Definition", {"Decription"}, {"Code Definition.Decription"}),
#"Removed Columns" = Table.RemoveColumns(#"Expanded Code Definition",{"Code Location.CVTname", "Custom", "Value"}),
#"Reordered Columns" = Table.ReorderColumns(#"Removed Columns",{"Name", "Code Definition.Decription", "Attribute"}),
#"Pivoted Column" = Table.Pivot(#"Reordered Columns", List.Distinct(#"Reordered Columns"[Attribute]), "Attribute", "Code Definition.Decription")
in
#"Pivoted Column"
You should get desired result.
Please mark it as answer if it solves your issue. Kudos are also appreciated.
Hello @Stex85 ,
I am assuming that you have 'N' number of columns like this and you need to add information.
Please follow below steps-
Step 1- Add custom column in Code Defination table using below code-
#"Inserted Merged Column" = Table.AddColumn(#"Changed Type", "Merged", each Text.Combine({[CVTname], [Key]}), type text),
#"Renamed Columns" = Table.RenameColumns(#"Inserted Merged Column",{{"Merged", "MergeKey"}})
in
#"Renamed Columns"
Step 2-
Add below transformation in your customer table-
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Name", type text}, {"Member_Status", type text}, {"Address_type", type text}}),
#"Unpivoted Columns" = Table.UnpivotOtherColumns(#"Changed Type", {"Name"}, "Attribute", "Value"),
#"Merged Queries" = Table.NestedJoin(#"Unpivoted Columns", {"Attribute"}, #"Code Location", {"columnname"}, "Code Location", JoinKind.LeftOuter),
#"Expanded Code Location" = Table.ExpandTableColumn(#"Merged Queries", "Code Location", {"CVTname"}, {"Code Location.CVTname"}),
#"Added Custom" = Table.AddColumn(#"Expanded Code Location", "Custom", each [Code Location.CVTname]&[Value]),
#"Merged Queries1" = Table.NestedJoin(#"Added Custom", {"Custom"}, #"Code Definition", {"MergeKey"}, "Code Definition", JoinKind.LeftOuter),
#"Expanded Code Definition" = Table.ExpandTableColumn(#"Merged Queries1", "Code Definition", {"Decription"}, {"Code Definition.Decription"}),
#"Removed Columns" = Table.RemoveColumns(#"Expanded Code Definition",{"Code Location.CVTname", "Custom", "Value"}),
#"Reordered Columns" = Table.ReorderColumns(#"Removed Columns",{"Name", "Code Definition.Decription", "Attribute"}),
#"Pivoted Column" = Table.Pivot(#"Reordered Columns", List.Distinct(#"Reordered Columns"[Attribute]), "Attribute", "Code Definition.Decription")
in
#"Pivoted Column"
You should get desired result.
Please mark it as answer if it solves your issue. Kudos are also appreciated.
Hi, sorry, getting a token EOF expected error. Here's the code for the table
let
Source = Sql.Database("XXXXXXXXXXX", "xxxxxxxxxx"),
cvt_cvtValues = Source{[Schema="cvt",Item="cvtValues"]}[Data]
in
"code definition"
#"Inserted Merged Column" = Table.AddColumn(#"Changed Type", "Merged", each Text.Combine({[CVTname], [Key]}), type text),
#"Renamed Columns" = Table.RenameColumns(#"Inserted Merged Column",{{"Merged", "MergeKey"}})
in
#"Renamed Columns"
Hello,
Please remove
in
"code defination"
from above code. And use-
let
Source = Sql.Database("XXXXXXXXXXX", "xxxxxxxxxx"),
cvt_cvtValues = Source{[Schema="cvt",Item="cvtValues"]}[Data]
#"Inserted Merged Column" = Table.AddColumn(#"Changed Type", "Merged", each Text.Combine({[CVTname], [Key]}), type text),
#"Renamed Columns" = Table.RenameColumns(#"Inserted Merged Column",{{"Merged", "MergeKey"}})
in
#"Renamed Columns"
@Stex85 , New columns on the customer table
maxx(filter(code, code[Key] = Customer[Member_Status] && [CVTname] = "Memberstatus"), Code[Decription])
Add other in same way
Check out the November 2025 Power BI update to learn about new features.
Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!