Power BI is turning 10, and we’re marking the occasion with a special community challenge. Use your creativity to tell a story, uncover trends, or highlight something unexpected.
Get startedJoin us for an expert-led overview of the tools and concepts you'll need to become a Certified Power BI Data Analyst and pass exam PL-300. Register now.
I have a table like this : I wanted to know the number of storage connected to VM ( Datastore name contains the storage name )
Server Name | Datastores.1.1 | Datastores.2.1 | Datastores.3.1 | Datastores.4.1 | Datastores.5.1 | Datastores.6.1 | Datastores.7.1 | Datastores.8.1 |
VM1 | PureStorage05 | PureStorage05 | PureStorage05 | PureStorage02 | PureStorage02 | PureStorage02 | PureStorage05 | PureStorage05 |
VM2 | PureStorage05 | PureStorage02 | PureStorage05 | PureStorage05 | PureStorage05 | PureStorage05 | PureStorage02 | PureStorage02 |
VM3 | InfiniStorage09 | PureStorage06 | PureStorage06 | PureStorage06 | PureStorage01 | PureStorage01 | PureStorage06 | PureStorage06 |
I am looking for an output like this :
Server_Name | No_of_Storage_connected | StorageArray |
VM1 | 2 | PureStorage05 ,PureStorage02 |
VM2 | 2 | PureStorage05 ,PureStorage02 |
VM3 | 3 | InfiniStorage09,PureStorage06,PureStorage01 |
Could you please help me to find a way to do this ?
Solved! Go to Solution.
@Saul_K tweak the measure to filter out N/A:
Storage Count =
VAR __Table =
DISTINCT (
UNION (
VALUES ( 'Storage'[Datastores.1.1] ),
VALUES ( 'Storage'[Datastores.2.1] ),
VALUES ( 'Storage'[Datastores.3.1] ),
VALUES ( 'Storage'[Datastores.4.1] ),
VALUES ( 'Storage'[Datastores.5.1] ),
VALUES ( 'Storage'[Datastores.6.1] ),
VALUES ( 'Storage'[Datastores.7.1] ),
VALUES ( 'Storage'[Datastores.8.1] )
)
)
RETURN
COUNTROWS ( FILTER ( __Table, [Datastores.1.1] <> "N/A" ) )
Storage Array =
VAR __Table =
DISTINCT (
UNION (
VALUES ( 'Storage'[Datastores.1.1] ),
VALUES ( 'Storage'[Datastores.2.1] ),
VALUES ( 'Storage'[Datastores.3.1] ),
VALUES ( 'Storage'[Datastores.4.1] ),
VALUES ( 'Storage'[Datastores.5.1] ),
VALUES ( 'Storage'[Datastores.6.1] ),
VALUES ( 'Storage'[Datastores.7.1] ),
VALUES ( 'Storage'[Datastores.8.1] )
)
)
RETURN
CONCATENATEX ( FILTER ( __Table, [Datastores.1.1] <> "N/A" ), [Datastores.1.1], "," )
Subscribe to the @PowerBIHowTo YT channel for an upcoming video on List and Record functions in Power Query!!
Learn Power BI and Fabric - subscribe to our YT channel - Click here: @PowerBIHowTo
If my solution proved useful, I'd be delighted to receive Kudos. When you put effort into asking a question, it's equally thoughtful to acknowledge and give Kudos to the individual who helped you solve the problem. It's a small gesture that shows appreciation and encouragement! ❤
Did I answer your question? Mark my post as a solution. Proud to be a Super User! Appreciate your Kudos 🙂
Feel free to email me with any of your BI needs.
@Saul_K tweak the measure to filter out N/A:
Storage Count =
VAR __Table =
DISTINCT (
UNION (
VALUES ( 'Storage'[Datastores.1.1] ),
VALUES ( 'Storage'[Datastores.2.1] ),
VALUES ( 'Storage'[Datastores.3.1] ),
VALUES ( 'Storage'[Datastores.4.1] ),
VALUES ( 'Storage'[Datastores.5.1] ),
VALUES ( 'Storage'[Datastores.6.1] ),
VALUES ( 'Storage'[Datastores.7.1] ),
VALUES ( 'Storage'[Datastores.8.1] )
)
)
RETURN
COUNTROWS ( FILTER ( __Table, [Datastores.1.1] <> "N/A" ) )
Storage Array =
VAR __Table =
DISTINCT (
UNION (
VALUES ( 'Storage'[Datastores.1.1] ),
VALUES ( 'Storage'[Datastores.2.1] ),
VALUES ( 'Storage'[Datastores.3.1] ),
VALUES ( 'Storage'[Datastores.4.1] ),
VALUES ( 'Storage'[Datastores.5.1] ),
VALUES ( 'Storage'[Datastores.6.1] ),
VALUES ( 'Storage'[Datastores.7.1] ),
VALUES ( 'Storage'[Datastores.8.1] )
)
)
RETURN
CONCATENATEX ( FILTER ( __Table, [Datastores.1.1] <> "N/A" ), [Datastores.1.1], "," )
Subscribe to the @PowerBIHowTo YT channel for an upcoming video on List and Record functions in Power Query!!
Learn Power BI and Fabric - subscribe to our YT channel - Click here: @PowerBIHowTo
If my solution proved useful, I'd be delighted to receive Kudos. When you put effort into asking a question, it's equally thoughtful to acknowledge and give Kudos to the individual who helped you solve the problem. It's a small gesture that shows appreciation and encouragement! ❤
Did I answer your question? Mark my post as a solution. Proud to be a Super User! Appreciate your Kudos 🙂
Feel free to email me with any of your BI needs.
@ThxAlot that was my first recommendation in my reply.
Subscribe to the @PowerBIHowTo YT channel for an upcoming video on List and Record functions in Power Query!!
Learn Power BI and Fabric - subscribe to our YT channel - Click here: @PowerBIHowTo
If my solution proved useful, I'd be delighted to receive Kudos. When you put effort into asking a question, it's equally thoughtful to acknowledge and give Kudos to the individual who helped you solve the problem. It's a small gesture that shows appreciation and encouragement! ❤
Did I answer your question? Mark my post as a solution. Proud to be a Super User! Appreciate your Kudos 🙂
Feel free to email me with any of your BI needs.
Isn't it enough simple after you unpivot the table?
Expertise = List.Accumulate( {Days as from Today}, {Skills and Knowledge}, (Current, Everyday) => Current & Day.LearnAndPractise(Everyday) ) |
Thanks for the response. I am very new to Powerbi and not good with the unpivot option, I will take a look. Thank you for the suggetion.
@Saul_K Usually you want unpivoted data but with the current structure, you can add the following two measures to get the result;
Storage Count =
VAR __Table =
DISTINCT (
UNION (
VALUES ( 'Storage'[Datastores.1.1] ),
VALUES ( 'Storage'[Datastores.2.1] ),
VALUES ( 'Storage'[Datastores.3.1] ),
VALUES ( 'Storage'[Datastores.4.1] ),
VALUES ( 'Storage'[Datastores.5.1] ),
VALUES ( 'Storage'[Datastores.6.1] ),
VALUES ( 'Storage'[Datastores.7.1] ),
VALUES ( 'Storage'[Datastores.8.1] )
)
)
RETURN
COUNTROWS ( __Table )
Storage Array =
VAR __Table =
DISTINCT (
UNION (
VALUES ( 'Storage'[Datastores.1.1] ),
VALUES ( 'Storage'[Datastores.2.1] ),
VALUES ( 'Storage'[Datastores.3.1] ),
VALUES ( 'Storage'[Datastores.4.1] ),
VALUES ( 'Storage'[Datastores.5.1] ),
VALUES ( 'Storage'[Datastores.6.1] ),
VALUES ( 'Storage'[Datastores.7.1] ),
VALUES ( 'Storage'[Datastores.8.1] )
)
)
RETURN
CONCATENATEX ( __Table, [Datastores.1.1], "," )
Subscribe to the @PowerBIHowTo YT channel for an upcoming video on List and Record functions in Power Query!!
Learn Power BI and Fabric - subscribe to our YT channel - Click here: @PowerBIHowTo
If my solution proved useful, I'd be delighted to receive Kudos. When you put effort into asking a question, it's equally thoughtful to acknowledge and give Kudos to the individual who helped you solve the problem. It's a small gesture that shows appreciation and encouragement! ❤
Did I answer your question? Mark my post as a solution. Proud to be a Super User! Appreciate your Kudos 🙂
Feel free to email me with any of your BI needs.
Thanks a lot , that helps . I am very new to power bi and my questions may feel silly 🙂 I have one more ask,how we can ignore 'Null' / 'N/A' values when you run the above query ? I had null values before, but I changed it to N/A.
The below is the sample table.
As there is N/A value in most of the row, it calculate that as a value and add it in to count and storage array output.
Server_Name | No_of_Storage_connected | StorageArray |
VM1 | 2 | PureStorage05 ,PureStorage02 |
VM2 | 3 | PureStorage05 ,PureStorage02,N/A |
VM3 | 4 | InfiniStorage09,PureStorage06,PureStorage01,N/A |
This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.
Check out the June 2025 Power BI update to learn about new features.
User | Count |
---|---|
80 | |
76 | |
61 | |
36 | |
32 |
User | Count |
---|---|
91 | |
60 | |
59 | |
49 | |
45 |