Skip to content

Instantly share code, notes, and snippets.

@mshakhomirov
Created July 16, 2020 07:43
Show Gist options
  • Save mshakhomirov/19e5cdfde6d49b14ead59704620f7dfe to your computer and use it in GitHub Desktop.
Save mshakhomirov/19e5cdfde6d49b14ead59704620f7dfe to your computer and use it in GitHub Desktop.
select (case when tile = 50 then 'Median' when tile = 95 then '95%' else '5%' end) as tile
, app_display_version
, max(cast( ROUND(duration/1000)/1000 as numeric) ) max_duration_s
, min(cast( ROUND(duration/1000)/1000 as numeric) ) min_duration_s
from (
select
trace_info.duration_us duration
, ntile(100) over (partition by (app_display_version) order by trace_info.duration_us) tile
, app_display_version
FROM `your-project-client.firebase_performance.your-project-client_IOS`
WHERE DATE(_PARTITIONTIME) >= PARSE_DATE('%Y%m%d', @DS_START_DATE) AND DATE(_PARTITIONTIME) <= PARSE_DATE('%Y%m%d', @DS_END_DATE)
AND
date(event_timestamp) >= PARSE_DATE('%Y%m%d', @DS_START_DATE)
AND
date(event_timestamp) <= PARSE_DATE('%Y%m%d', @DS_END_DATE)
AND event_type = "DURATION_TRACE"
AND event_name = 'Logon'
) x
WHERE tile in (5, 50, 95)
group by app_display_version, tile
order by app_display_version
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment