Check your eligibility for this 50% exam voucher offer and join us for free live learning sessions to get prepared for Exam DP-700.
Get StartedDon't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.
Hi,
I am trying to find the peak/concurrent usage of an application during the day.
From my table named: wrl_tbl_log_1
luid | begin_time | end_time |
2099 | 3/5/2020 4:03:02 PM | 3/5/2020 4:06:45 PM |
2099 | 3/5/2020 4:25:32 PM | 3/5/2020 4:27:25 PM |
2100 | 3/5/2020 1:11:57 PM | 3/5/2020 8:42:07 PM |
2099 | 3/5/2020 3:29:30 PM | null |
2100 | 3/5/2020 3:35:38 PM | null |
2099 | 3/5/2020 6:38:09 PM | 3/5/2020 7:04:04 PM |
I am stumped trying to determine how the dates all overlap over eachother.
My end goal is to find the overlap during a day and make a graph like the following.
If someone could point me in the correct direction, I would really appreciate it.
-M
Solved! Go to Solution.
You could create a list of all the hours with an active Usage record.
You can either have a table of hours or generate them in M
let
Source = List.Generate(()=>0, each _ < 24, each _ + 1),
#"Converted to Table" = Table.FromList(Source, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
#"Changed Type" = Table.TransformColumnTypes(#"Converted to Table",{{"Column1", Int64.Type}}),
#"Renamed Columns" = Table.RenameColumns(#"Changed Type",{{"Column1", "Hour"}})
in
#"Renamed Columns"
Now we can cross join the Usage data and filter just the hours that are between the start and end.
Create a New Dax Table (under Modeling)
HourUsage = FILTER(CROSSJOIN(Hours,'Usage'), AND(Hours[Hour]>=Hour(Usage[begin_time]), Hours[Hour]<=HOUR(Usage[end_time]) ))
You can then chart the hours and count distinct uids.
You could create a list of all the hours with an active Usage record.
You can either have a table of hours or generate them in M
let
Source = List.Generate(()=>0, each _ < 24, each _ + 1),
#"Converted to Table" = Table.FromList(Source, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
#"Changed Type" = Table.TransformColumnTypes(#"Converted to Table",{{"Column1", Int64.Type}}),
#"Renamed Columns" = Table.RenameColumns(#"Changed Type",{{"Column1", "Hour"}})
in
#"Renamed Columns"
Now we can cross join the Usage data and filter just the hours that are between the start and end.
Create a New Dax Table (under Modeling)
HourUsage = FILTER(CROSSJOIN(Hours,'Usage'), AND(Hours[Hour]>=Hour(Usage[begin_time]), Hours[Hour]<=HOUR(Usage[end_time]) ))
You can then chart the hours and count distinct uids.
Thanks! This solves the small problem. You taught me how CROSSJOIN works. Now I can expand the problem and learn how to perform my larger task.
Glad it works.
Curbal has some more details/videos on the different dax joins
https://curbal.com/blog/glossary/crossjoin-dax
Check out Open Tickets. It was designed for this. https://community.powerbi.com/t5/Quick-Measures-Gallery/Open-Tickets/m-p/409364#M147
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Prices go up Feb. 11th.
Check out the January 2025 Power BI update to learn about new features in Reporting, Modeling, and Data Connectivity.
User | Count |
---|---|
146 | |
85 | |
66 | |
52 | |
47 |
User | Count |
---|---|
215 | |
90 | |
83 | |
66 | |
58 |