Don't miss your chance to take the Fabric Data Engineer (DP-700) exam on us!
Learn moreThe FabCon + SQLCon recap series starts April 14th at 8am Pacific. If you’re tracking where AI is going inside Fabric, this first session is a can't miss. Register now
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]))
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.
A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.
Share feedback directly with Fabric product managers, participate in targeted research studies and influence the Fabric roadmap.
| User | Count |
|---|---|
| 5 | |
| 4 | |
| 3 | |
| 2 | |
| 2 |
| User | Count |
|---|---|
| 8 | |
| 6 | |
| 6 | |
| 6 | |
| 5 |