Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Get certified in Microsoft Fabric—for free! For a limited time, get a free DP-600 exam voucher to use by the end of 2024. Register now

Reply
Isambard
Frequent Visitor

Reverse pivots with multiple columns - Transform efficiently without lots of tables

Hi,

 

I have a data table from an external source with two fields. Field one is a unique ID. Field 2 is a list of categories in the format "category1; category2; category 3..." There can be just one category or many. They are always seperated by a semicolon but not always sequential.

 

Example:

 

001           category1; category2

002           category2; category5

003           category18

004           category23; category1; category11; category6

 

I would like to tranform this table into an easier format to work with such as:

 

001           category1

001           category2

002           category2

002           category5

003           category18

004           category23

004           category1

004           category11

004           category6

 

However the way I'm currently doing these feel really ineffeicent. I seperate the category field delimited by semi collon, giving me many collumns: "category 1, category 2...". Most of the values in the later collumns are nulls but some rows have a large number of categories. I then duplicate the table once for each new collumn, and delete all collumns in each duplicate except one.

 

ie 'table 1' has only [ID] and [category 1], 'table 2' has only [ID] and [category2]...

 

Once I have a table for every collumn I apend all the tables into the final result.

 

This has three main problems:

  • my dataset now has a large number of tables which I don't want (I only want to refernce the final apended table.)
  • the data is not auto refreshing - if an extra category is added in the base data which exceeds my number of split collumns it won't be picked up.
  • It takes absolutey ages to duplicate and sift tables like this. 

I would really appreciate any better solution than the one I'm using. Thanks!

 

1 ACCEPTED SOLUTION
spinfuzer
Super User
Super User

Split into Rows instead.

spinfuzer_0-1701795320394.png

 

View solution in original post

2 REPLIES 2
Isambard
Frequent Visitor

Thanks so much. I love it when there's a simple solution! That will teach me not to look under advanced options.

spinfuzer
Super User
Super User

Split into Rows instead.

spinfuzer_0-1701795320394.png

 

Helpful resources

Announcements
November Carousel

Fabric Community Update - November 2024

Find out what's new and trending in the Fabric Community.

Live Sessions with Fabric DB

Be one of the first to start using Fabric Databases

Starting December 3, join live sessions with database experts and the Fabric product team to learn just how easy it is to get started.

Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early Bird pricing ends December 9th.

Nov PBI Update Carousel

Power BI Monthly Update - November 2024

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