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
I have the below table
I want to create another column called "Local Market" which splits this column based on semi-column and the values come on a new row like below
What can be the power query code for this
Solved! Go to Solution.
Hi @gigotomo ,
Try the following example code to see how I did this:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WcnG1DvW2dg1WitWJVnL0AXHcgpRiYwE=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"Local Market Combined" = _t]),
// Relevant steps=====>
dupeColumn = Table.DuplicateColumn(Source, "Local Market Combined", "Local Market"),
splitByDelimToRows = Table.ExpandListColumn(Table.TransformColumns(dupeColumn, {{"Local Market", Splitter.SplitTextByDelimiter(";", QuoteStyle.Csv), let itemType = (type nullable text) meta [Serialized.Text = true] in type {itemType}}}), "Local Market")
in
splitByDelimToRows
Summary:
-1- Duplicate [Local Market Combined], changing the new column name to the desired value in the duplicate step code:
-2- Select your new [Local Market] column and go to Transform tab > Split Column (dropdown) > By Delimiter. Set up this as follows:
Output:
Pete
Proud to be a Datanaut!
let
Source = #table({"Local Market Combined"}, {{"DE;UK;ES"}, {"AL;UK;FR"}}),
result = Table.FromList(
List.TransformMany(
Table.ToList(Source, (x) => x),
(x) => Text.Split(x{0}, ";"),
(x, y) => x & {y}
),
(x) => x,
{"Local Market Combined", "Local Market"}
)
in
result
let
Source = #table({"Local Market Combined"}, {{"DE;UK;ES"}, {"AL;UK;FR"}}),
result = Table.FromList(
List.TransformMany(
Table.ToList(Source, (x) => x),
(x) => Text.Split(x{0}, ";"),
(x, y) => x & {y}
),
(x) => x,
{"Local Market Combined", "Local Market"}
)
in
result
Hi @gigotomo ,
Try the following example code to see how I did this:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WcnG1DvW2dg1WitWJVnL0AXHcgpRiYwE=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"Local Market Combined" = _t]),
// Relevant steps=====>
dupeColumn = Table.DuplicateColumn(Source, "Local Market Combined", "Local Market"),
splitByDelimToRows = Table.ExpandListColumn(Table.TransformColumns(dupeColumn, {{"Local Market", Splitter.SplitTextByDelimiter(";", QuoteStyle.Csv), let itemType = (type nullable text) meta [Serialized.Text = true] in type {itemType}}}), "Local Market")
in
splitByDelimToRows
Summary:
-1- Duplicate [Local Market Combined], changing the new column name to the desired value in the duplicate step code:
-2- Select your new [Local Market] column and go to Transform tab > Split Column (dropdown) > By Delimiter. Set up this as follows:
Output:
Pete
Proud to be a Datanaut!
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 |