Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Hello,
I have 14 dimension tables, and each table contains between 10 and 20 columns.
After importing the tables from my database, the columns were named as: source_dim_name_of_table. name of columns
I want to rename all the columns keeping only the part after the . ie keep only name of columns. source_dim_name_of_table. name of columns
can someone help me please, because apart from doing it by hand, I don't see how I can do it otherwise.
Thank you for your help.
Solved! Go to Solution.
Hello - it would be best to do this in Power Query. You can do this by adding a new step to each table and use the Table.TransformColumnNames function, like this:
RenameColumns = Table.TransformColumnNames ( Source, each Text.AfterDelimiter ( _, "." ) )
Here is the full sample table with script:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMlTSAeJYnWglIyDLCMwyBrKMlWJjAQ==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [source_dim.Test1 = _t, source_dim.test2 = _t]),
RenameColumns = Table.TransformColumnNames ( Source, each Text.AfterDelimiter ( _, "." ) )
in
RenameColumns
BEFORE
AFTER
Hello - it would be best to do this in Power Query. You can do this by adding a new step to each table and use the Table.TransformColumnNames function, like this:
RenameColumns = Table.TransformColumnNames ( Source, each Text.AfterDelimiter ( _, "." ) )
Here is the full sample table with script:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMlTSAeJYnWglIyDLCMwyBrKMlWJjAQ==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [source_dim.Test1 = _t, source_dim.test2 = _t]),
RenameColumns = Table.TransformColumnNames ( Source, each Text.AfterDelimiter ( _, "." ) )
in
RenameColumns
BEFORE
AFTER
Hi,
Not sure if this will work but it is my best idea so far:
1. Get the list of column names, following the suggested approach here: Get Collection Column Names - Matthew Devaney
2. and then try something like: ForAll(columnNames, RenameColumns(dataTable, columnName, Split(columnName, ".")[2]))
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.