dbt Video editing

Company Sessions

Company Sessions model for video editing.

inferred

Blocks

company_sessions.sql · 119 lines
inferred
-- models/company_sessions.sql
{{ config(materialized='table') }}

SELECT
  s.domain_userid,
  s.domain_sessionidx,
  s.session_start_ts,
  s.session_end_ts,
  s.number_of_events,
  s.distinct_pages_viewed,
  g.geo_country,
  g.geo_country_code_2_characters,
  g.geo_country_code_3_characters,
  g.geo_region,
  g.geo_city,
  g.geo_zipcode,
  g.geo_latitude,
  g.geo_longitude,
  l.page_urlhost AS landing_page_host,
  l.page_urlpath AS landing_page_path,
  l.page_urlquery AS landing_page_query,
  l2.page_urlhost AS exit_page_host,
  l2.page_urlpath AS exit_page_path,
  s2.mkt_source,
  s2.mkt_medium,
  s2.mkt_term,
  s2.mkt_campaign,
  s2.refr_source,
  s2.refr_medium,
  s2.refr_term,
  s2.refr_urlhost,
  s2.refr_urlpath,
  t.br_name,
  t.br_family,
  t.br_version,
  t.br_type,
  t.br_renderengine,
  t.br_lang,
  t.br_features_director,
  t.br_features_flash,
  t.br_features_gears,
  t.br_features_java,
  t.br_features_pdf,
  t.br_features_quicktime,
  t.br_features_realplayer,
  t.br_features_silverlight,
  t.br_features_windowsmedia,
  t.br_cookies,
  t.os_name,
  t.os_family,
  t.os_manufacturer,
  t.os_timezone,
  t.dvce_type,
  t.dvce_ismobile,
  t.dvce_screenwidth,
  t.dvce_screenheight
FROM {{ ref('company_sessions_basic') }} AS s
LEFT JOIN {{ ref('company_sessions_geo') }} AS g
  ON s.domain_userid = g.domain_userid AND
  s.domain_sessionidx = g.domain_sessionidx
LEFT JOIN {{ ref('company_sessions_landing_page') }} AS l
  ON s.domain_userid = l.domain_userid AND
  s.domain_sessionidx = l.domain_sessionidx
LEFT JOIN {{ ref('company_sessions_last_page') }} AS l2
  ON s.domain_userid = l2.domain_userid AND
  s.domain_sessionidx = l2.domain_sessionidx
LEFT JOIN {{ ref('company_sessions_source') }} AS s2
  ON s.domain_userid = s2.domain_userid AND
  s.domain_sessionidx = s2.domain_sessionidx
LEFT JOIN {{ ref('company_sessions_technology') }} AS t
  ON s.domain_userid = t.domain_userid AND
  s.domain_sessionidx = t.domain_sessionidx

# models/schema.yml
version: 2

models:
  - name: company_sessions
    columns:
      - name: user_id
      - name: session_index
      - name: session_id
      - name: session_index_tier
      - name: start
      - name: end
      - name: session_duration_seconds
      - name: session_duration_seconds_tiered
      - name: events_during_session
      - name: events_during_session_tiered
      - name: bounce
      - name: new_vs_returning_visitor
      - name: distinct_pages_viewed
      - name: distinct_pages_viewed_tiered
      - name: event_stream
      - name: geography_country
      - name: geography_country_three_letter_iso_code
      - name: geography_country_two_letter_iso_code
      - name: geography_region
      - name: geography_city
      - name: geography_zipcode
      - name: geography_latitude
      - name: geography_longitude
      - name: landing_page_host
      - name: landing_page_path
      - name: landing_page
      - name: landing_page_query
      - name: exit_page_host
      - name: exit_page_path
      - name: exit_page
      - name: referer_medium
      - name: referer_source
      - name: referer_term
      - name: referer_url_host
      - name: referer_url_path
      - name: campaign_medium
      - name: campaign_source
      - name: campaign_term
      - name: campaign_name
      - name: device_type

Assumptions

  • Each ${view.SQL_TABLE_NAME} was mapped to {{ ref('view') }}; confirm a dbt model exists for each referenced view.
  • materialized='table' inferred from a LookML persist hint (persist_for / datagroup / sql_trigger_value).
  • schema.yml columns come from view dimensions; a primary_key dimension gets unique + not_null tests.
company_sessions.sql · 69 lines
source-preserved validation: not checked
SELECT
  s.domain_userid,
  s.domain_sessionidx,
  s.session_start_ts,
  s.session_end_ts,
  s.number_of_events,
  s.distinct_pages_viewed,
  g.geo_country,
  g.geo_country_code_2_characters,
  g.geo_country_code_3_characters,
  g.geo_region,
  g.geo_city,
  g.geo_zipcode,
  g.geo_latitude,
  g.geo_longitude,
  l.page_urlhost AS landing_page_host,
  l.page_urlpath AS landing_page_path,
  l.page_urlquery AS landing_page_query,
  l2.page_urlhost AS exit_page_host,
  l2.page_urlpath AS exit_page_path,
  s2.mkt_source,
  s2.mkt_medium,
  s2.mkt_term,
  s2.mkt_campaign,
  s2.refr_source,
  s2.refr_medium,
  s2.refr_term,
  s2.refr_urlhost,
  s2.refr_urlpath,
  t.br_name,
  t.br_family,
  t.br_version,
  t.br_type,
  t.br_renderengine,
  t.br_lang,
  t.br_features_director,
  t.br_features_flash,
  t.br_features_gears,
  t.br_features_java,
  t.br_features_pdf,
  t.br_features_quicktime,
  t.br_features_realplayer,
  t.br_features_silverlight,
  t.br_features_windowsmedia,
  t.br_cookies,
  t.os_name,
  t.os_family,
  t.os_manufacturer,
  t.os_timezone,
  t.dvce_type,
  t.dvce_ismobile,
  t.dvce_screenwidth,
  t.dvce_screenheight
FROM ${company_sessions_basic.SQL_TABLE_NAME} AS s
LEFT JOIN ${company_sessions_geo.SQL_TABLE_NAME} AS g
  ON s.domain_userid = g.domain_userid AND
  s.domain_sessionidx = g.domain_sessionidx
LEFT JOIN ${company_sessions_landing_page.SQL_TABLE_NAME} AS l
  ON s.domain_userid = l.domain_userid AND
  s.domain_sessionidx = l.domain_sessionidx
LEFT JOIN ${company_sessions_last_page.SQL_TABLE_NAME} AS l2
  ON s.domain_userid = l2.domain_userid AND
  s.domain_sessionidx = l2.domain_sessionidx
LEFT JOIN ${company_sessions_source.SQL_TABLE_NAME} AS s2
  ON s.domain_userid = s2.domain_userid AND
  s.domain_sessionidx = s2.domain_sessionidx
LEFT JOIN ${company_sessions_technology.SQL_TABLE_NAME} AS t
  ON s.domain_userid = t.domain_userid AND
  s.domain_sessionidx = t.domain_sessionidx
company_sessions.view.lkml · 458 lines
inferred
view: company_sessions {
  derived_table: {
    sql: SELECT
  s.domain_userid,
  s.domain_sessionidx,
  s.session_start_ts,
  s.session_end_ts,
  s.number_of_events,
  s.distinct_pages_viewed,
  g.geo_country,
  g.geo_country_code_2_characters,
  g.geo_country_code_3_characters,
  g.geo_region,
  g.geo_city,
  g.geo_zipcode,
  g.geo_latitude,
  g.geo_longitude,
  l.page_urlhost AS landing_page_host,
  l.page_urlpath AS landing_page_path,
  l.page_urlquery AS landing_page_query,
  l2.page_urlhost AS exit_page_host,
  l2.page_urlpath AS exit_page_path,
  s2.mkt_source,
  s2.mkt_medium,
  s2.mkt_term,
  s2.mkt_campaign,
  s2.refr_source,
  s2.refr_medium,
  s2.refr_term,
  s2.refr_urlhost,
  s2.refr_urlpath,
  t.br_name,
  t.br_family,
  t.br_version,
  t.br_type,
  t.br_renderengine,
  t.br_lang,
  t.br_features_director,
  t.br_features_flash,
  t.br_features_gears,
  t.br_features_java,
  t.br_features_pdf,
  t.br_features_quicktime,
  t.br_features_realplayer,
  t.br_features_silverlight,
  t.br_features_windowsmedia,
  t.br_cookies,
  t.os_name,
  t.os_family,
  t.os_manufacturer,
  t.os_timezone,
  t.dvce_type,
  t.dvce_ismobile,
  t.dvce_screenwidth,
  t.dvce_screenheight
FROM ${company_sessions_basic.SQL_TABLE_NAME} AS s
LEFT JOIN ${company_sessions_geo.SQL_TABLE_NAME} AS g
  ON s.domain_userid = g.domain_userid AND
  s.domain_sessionidx = g.domain_sessionidx
LEFT JOIN ${company_sessions_landing_page.SQL_TABLE_NAME} AS l
  ON s.domain_userid = l.domain_userid AND
  s.domain_sessionidx = l.domain_sessionidx
LEFT JOIN ${company_sessions_last_page.SQL_TABLE_NAME} AS l2
  ON s.domain_userid = l2.domain_userid AND
  s.domain_sessionidx = l2.domain_sessionidx
LEFT JOIN ${company_sessions_source.SQL_TABLE_NAME} AS s2
  ON s.domain_userid = s2.domain_userid AND
  s.domain_sessionidx = s2.domain_sessionidx
LEFT JOIN ${company_sessions_technology.SQL_TABLE_NAME} AS t
  ON s.domain_userid = t.domain_userid AND
  s.domain_sessionidx = t.domain_sessionidx ;;
    persist_for: "24 hours"
  }

  dimension: user_id {
    sql: ${TABLE}.domain_userid ;;
  }

  dimension: session_index {
    type: int
    sql: ${TABLE}.domain_sessionidx ;;
  }

  dimension: session_id {
    sql: ${TABLE}.domain_userid || '-' || ${TABLE}.domain_sessionidx ;;
  }

  dimension: session_index_tier {
    type: tier
    sql: ${session_index} ;;
  }

  dimension: start {
    sql: ${TABLE}.session_start_ts ;;
  }

  dimension: end {
    sql: ${TABLE}.session_end_ts ;;
  }

  dimension: session_duration_seconds {
    type: int
    sql: EXTRACT(EPOCH FROM (${TABLE}.session_end_ts - ${TABLE}.session_start_ts)) ;;
  }

  dimension: session_duration_seconds_tiered {
    type: tier
    sql: ${session_duration_seconds} ;;
  }

  dimension: events_during_session {
    type: int
    sql: ${TABLE}.number_of_events ;;
  }

  dimension: events_during_session_tiered {
    type: tier
    sql: ${TABLE}.number_of_events ;;
  }

  dimension: bounce {
    type: yesno
    sql: ${TABLE}.number_of_events = 1 ;;
  }

  dimension: new_vs_returning_visitor {
  }

  dimension: distinct_pages_viewed {
    sql: ${TABLE}.distinct_pages_viewed ;;
  }

  dimension: distinct_pages_viewed_tiered {
    type: tier
    sql: ${TABLE}.distinct_pages_viewed ;;
  }

  dimension: event_stream {
    sql: ${session_id} ;;
  }

  dimension: geography_country {
    sql: ${TABLE}.geo_country ;;
  }

  dimension: geography_country_three_letter_iso_code {
    sql: ${TABLE}.geo_country_code_3_characters ;;
  }

  dimension: geography_country_two_letter_iso_code {
    sql: ${TABLE}.geo_country_code_2_characters ;;
  }

  dimension: geography_region {
    sql: ${TABLE}.geo_region ;;
  }

  dimension: geography_city {
    sql: ${TABLE}.geo_city ;;
  }

  dimension: geography_zipcode {
    sql: ${TABLE}.geo_zipcode ;;
  }

  dimension: geography_latitude {
    sql: ${TABLE}.geo_latitude ;;
  }

  dimension: geography_longitude {
    sql: ${TABLE}.geo_longitude ;;
  }

  dimension: landing_page_host {
    sql: ${TABLE}.landing_page_urlhost ;;
  }

  dimension: landing_page_path {
    sql: ${TABLE}.landing_page_path ;;
  }

  dimension: landing_page {
    sql: ${TABLE}.landing_page_host || ${TABLE}.landing_page_path ;;
  }

  dimension: landing_page_query {
    sql: ${TABLE}.landing_page_query ;;
  }

  dimension: exit_page_host {
    sql: ${TABLE}.exit_page_host ;;
  }

  dimension: exit_page_path {
    sql: ${TABLE}.exit_page_path ;;
  }

  dimension: exit_page {
    sql: ${TABLE}.exit_page_host || ${TABLE}.exit_page_path ;;
  }

  dimension: referer_medium {
  }

  dimension: referer_source {
    sql: ${TABLE}.refr_source ;;
  }

  dimension: referer_term {
    sql: ${TABLE}.refr_term ;;
  }

  dimension: referer_url_host {
    sql: ${TABLE}.refr_urlhost ;;
  }

  dimension: referer_url_path {
    sql: ${TABLE}.refr_urlpath ;;
  }

  dimension: campaign_medium {
    sql: ${TABLE}.mkt_medium ;;
  }

  dimension: campaign_source {
    sql: ${TABLE}.mkt_source ;;
  }

  dimension: campaign_term {
    sql: ${TABLE}.mkt_term ;;
  }

  dimension: campaign_name {
    sql: ${TABLE}.mkt_campaign ;;
  }

  dimension: device_type {
    sql: ${TABLE}.dvce_type ;;
  }

  dimension: device_is_mobile {
    sql: ${TABLE}.dvce_ismobile ;;
  }

  dimension: device_screen_width {
    sql: ${TABLE}.dvce_screenwidth ;;
  }

  dimension: device_screen_height {
    sql: ${TABLE}.dvce_screenheight ;;
  }

  dimension: operating_system {
    sql: ${TABLE}.os_name ;;
  }

  dimension: operating_system_family {
    sql: ${TABLE}.os_family ;;
  }

  dimension: operating_system_manufacturer {
    sql: ${TABLE}.os_manufacturer ;;
  }

  dimension: browser {
    sql: ${TABLE}.br_name ;;
  }

  dimension: browser_version {
    sql: ${TABLE}.br_version ;;
  }

  dimension: browser_type {
    sql: ${TABLE}.br_type ;;
  }

  dimension: browser_renderengine {
    sql: ${TABLE}.br_renderengine ;;
  }

  dimension: browser_language {
    sql: ${TABLE}.br_lang ;;
  }

  dimension: browser_has_director_plugin {
    sql: ${TABLE}.br_features_director ;;
  }

  dimension: browser_has_flash_plugin {
    sql: ${TABLE}.br_features_flash ;;
  }

  dimension: browser_has_gears_plugin {
    sql: ${TABLE}.br_features_gears ;;
  }

  dimension: browser_has_java_plugin {
    sql: ${TABLE}.br_features_java ;;
  }

  dimension: browser_has_pdf_plugin {
    sql: ${TABLE}.br_features_pdf ;;
  }

  dimension: browser_has_quicktime_plugin {
    sql: ${TABLE}.br_features_quicktime ;;
  }

  dimension: browser_has_realplayer_plugin {
    sql: ${TABLE}.br_features_realplayer ;;
  }

  dimension: browser_has_silverlight_plugin {
    sql: ${TABLE}.br_features_silverlight ;;
  }

  dimension: browser_has_windowsmedia_plugin {
    sql: ${TABLE}.br_features_windowsmedia ;;
  }

  dimension: browser_supports_cookies {
    sql: ${TABLE}.br_cookies ;;
  }

  dimension_group: start {
    type: time
    timeframes: [time, date, week, month]
    sql: ${TABLE}.session_start_ts ;;
  }

  measure: count {
    type: count_distinct
    sql: ${session_id} ;;
  }

  measure: visitors_count {
    type: count_distinct
    hidden: yes
    sql: ${user_id} ;;
  }

  measure: bounced_sessions_count {
    type: count_distinct
    filters: [bounce: "True"]
    sql: ${session_id} ;;
  }

  measure: bounce_rate {
    type: number
    sql: ${bounced_sessions_count}/NULLIF(${count},0)::REAL ;;
  }

  measure: sessions_from_new_visitors_count {
    type: count_distinct
    filters: [session_index: "1"]
    sql: ${session_id} ;;
  }

  measure: sessions_from_returning_visitor_count {
    type: number
    sql: ${count} - ${sessions_from_new_visitors_count} ;;
  }

  measure: new_visitors_count_over_total_visitors_count {
    type: number
    sql: ${sessions_from_new_visitors_count}/NULLIF(${count},0)::REAL ;;
  }

  measure: returning_visitors_count_over_total_visitors_count {
    type: number
    sql: ${sessions_from_returning_visitor_count}/NULLIF(${count},0)::REAL ;;
  }

  measure: events_count {
    type: sum
    sql: ${TABLE}.number_of_events ;;
  }

  measure: events_per_session {
    type: number
    sql: ${events_count}/NULLIF(${count},0)::REAL ;;
  }

  measure: events_per_visitor {
    type: number
    sql: ${events_count}/NULLIF(${visitors_count},0)::REAL ;;
  }

  measure: country_count {
    type: count_distinct
    sql: ${geography_country} ;;
  }

  measure: region_count {
    type: count_distinct
    sql: ${geography_region} ;;
  }

  measure: city_count {
    type: count_distinct
    sql: ${geography_city} ;;
  }

  measure: zip_code_count {
    type: count_distinct
    sql: ${geography_zipcode} ;;
  }

  measure: campaign_medium_count {
    type: count_distinct
    sql: ${campaign_medium} ;;
  }

  measure: campaign_source_count {
    type: count_distinct
    sql: ${campaign_source} ;;
  }

  measure: campaign_term_count {
    type: count_distinct
    sql: ${campaign_term} ;;
  }

  measure: campaign_count {
    type: count_distinct
    sql: ${campaign_name} ;;
  }

  measure: referer_medium_count {
    type: count_distinct
    sql: ${referer_medium} ;;
  }

  measure: referer_source_count {
    type: count_distinct
    sql: ${referer_source} ;;
  }

  measure: referer_term_count {
    type: count_distinct
    sql: ${referer_term} ;;
  }

  measure: device_count {
    type: count_distinct
    sql: ${device_type} ;;
  }

  measure: operating_system_count {
    type: count_distinct
    sql: ${operating_system} ;;
  }

  measure: browser_count {
    type: count_distinct
    sql: ${browser} ;;
  }
}
company_sessions.view.lookml · 288 lines
source-preserved
- view: company_sessions
  derived_table:
    sql: SELECT
  s.domain_userid,
  s.domain_sessionidx,
  s.session_start_ts,
  s.session_end_ts,
  s.number_of_events,
  s.distinct_pages_viewed,
  g.geo_country,
  g.geo_country_code_2_characters,
  g.geo_country_code_3_characters,
  g.geo_region,
  g.geo_city,
  g.geo_zipcode,
  g.geo_latitude,
  g.geo_longitude,
  l.page_urlhost AS landing_page_host,
  l.page_urlpath AS landing_page_path,
  l.page_urlquery AS landing_page_query,
  l2.page_urlhost AS exit_page_host,
  l2.page_urlpath AS exit_page_path,
  s2.mkt_source,
  s2.mkt_medium,
  s2.mkt_term,
  s2.mkt_campaign,
  s2.refr_source,
  s2.refr_medium,
  s2.refr_term,
  s2.refr_urlhost,
  s2.refr_urlpath,
  t.br_name,
  t.br_family,
  t.br_version,
  t.br_type,
  t.br_renderengine,
  t.br_lang,
  t.br_features_director,
  t.br_features_flash,
  t.br_features_gears,
  t.br_features_java,
  t.br_features_pdf,
  t.br_features_quicktime,
  t.br_features_realplayer,
  t.br_features_silverlight,
  t.br_features_windowsmedia,
  t.br_cookies,
  t.os_name,
  t.os_family,
  t.os_manufacturer,
  t.os_timezone,
  t.dvce_type,
  t.dvce_ismobile,
  t.dvce_screenwidth,
  t.dvce_screenheight
FROM ${company_sessions_basic.SQL_TABLE_NAME} AS s
LEFT JOIN ${company_sessions_geo.SQL_TABLE_NAME} AS g
  ON s.domain_userid = g.domain_userid AND
  s.domain_sessionidx = g.domain_sessionidx
LEFT JOIN ${company_sessions_landing_page.SQL_TABLE_NAME} AS l
  ON s.domain_userid = l.domain_userid AND
  s.domain_sessionidx = l.domain_sessionidx
LEFT JOIN ${company_sessions_last_page.SQL_TABLE_NAME} AS l2
  ON s.domain_userid = l2.domain_userid AND
  s.domain_sessionidx = l2.domain_sessionidx
LEFT JOIN ${company_sessions_source.SQL_TABLE_NAME} AS s2
  ON s.domain_userid = s2.domain_userid AND
  s.domain_sessionidx = s2.domain_sessionidx
LEFT JOIN ${company_sessions_technology.SQL_TABLE_NAME} AS t
  ON s.domain_userid = t.domain_userid AND
  s.domain_sessionidx = t.domain_sessionidx
    persist_for: 24 hours
  fields:
  - dimension: user_id
    sql: ${TABLE}.domain_userid
  - dimension: session_index
    type: int
    sql: ${TABLE}.domain_sessionidx
  - dimension: session_id
    sql: ${TABLE}.domain_userid || '-' || ${TABLE}.domain_sessionidx
  - dimension: session_index_tier
    type: tier
    sql: ${session_index}
  - dimension: start
    sql: ${TABLE}.session_start_ts
  - dimension: end
    sql: ${TABLE}.session_end_ts
  - dimension: session_duration_seconds
    type: int
    sql: EXTRACT(EPOCH FROM (${TABLE}.session_end_ts - ${TABLE}.session_start_ts))
  - dimension: session_duration_seconds_tiered
    type: tier
    sql: ${session_duration_seconds}
  - dimension: events_during_session
    type: int
    sql: ${TABLE}.number_of_events
  - dimension: events_during_session_tiered
    type: tier
    sql: ${TABLE}.number_of_events
  - dimension: bounce
    type: yesno
    sql: ${TABLE}.number_of_events = 1
  - dimension: new_vs_returning_visitor
  - dimension: distinct_pages_viewed
    sql: ${TABLE}.distinct_pages_viewed
  - dimension: distinct_pages_viewed_tiered
    type: tier
    sql: ${TABLE}.distinct_pages_viewed
  - dimension: event_stream
    sql: ${session_id}
  - dimension: geography_country
    sql: ${TABLE}.geo_country
  - dimension: geography_country_three_letter_iso_code
    sql: ${TABLE}.geo_country_code_3_characters
  - dimension: geography_country_two_letter_iso_code
    sql: ${TABLE}.geo_country_code_2_characters
  - dimension: geography_region
    sql: ${TABLE}.geo_region
  - dimension: geography_city
    sql: ${TABLE}.geo_city
  - dimension: geography_zipcode
    sql: ${TABLE}.geo_zipcode
  - dimension: geography_latitude
    sql: ${TABLE}.geo_latitude
  - dimension: geography_longitude
    sql: ${TABLE}.geo_longitude
  - dimension: landing_page_host
    sql: ${TABLE}.landing_page_urlhost
  - dimension: landing_page_path
    sql: ${TABLE}.landing_page_path
  - dimension: landing_page
    sql: ${TABLE}.landing_page_host || ${TABLE}.landing_page_path
  - dimension: landing_page_query
    sql: ${TABLE}.landing_page_query
  - dimension: exit_page_host
    sql: ${TABLE}.exit_page_host
  - dimension: exit_page_path
    sql: ${TABLE}.exit_page_path
  - dimension: exit_page
    sql: ${TABLE}.exit_page_host || ${TABLE}.exit_page_path
  - dimension: referer_medium
  - dimension: referer_source
    sql: ${TABLE}.refr_source
  - dimension: referer_term
    sql: ${TABLE}.refr_term
  - dimension: referer_url_host
    sql: ${TABLE}.refr_urlhost
  - dimension: referer_url_path
    sql: ${TABLE}.refr_urlpath
  - dimension: campaign_medium
    sql: ${TABLE}.mkt_medium
  - dimension: campaign_source
    sql: ${TABLE}.mkt_source
  - dimension: campaign_term
    sql: ${TABLE}.mkt_term
  - dimension: campaign_name
    sql: ${TABLE}.mkt_campaign
  - dimension: device_type
    sql: ${TABLE}.dvce_type
  - dimension: device_is_mobile
    sql: ${TABLE}.dvce_ismobile
  - dimension: device_screen_width
    sql: ${TABLE}.dvce_screenwidth
  - dimension: device_screen_height
    sql: ${TABLE}.dvce_screenheight
  - dimension: operating_system
    sql: ${TABLE}.os_name
  - dimension: operating_system_family
    sql: ${TABLE}.os_family
  - dimension: operating_system_manufacturer
    sql: ${TABLE}.os_manufacturer
  - dimension: browser
    sql: ${TABLE}.br_name
  - dimension: browser_version
    sql: ${TABLE}.br_version
  - dimension: browser_type
    sql: ${TABLE}.br_type
  - dimension: browser_renderengine
    sql: ${TABLE}.br_renderengine
  - dimension: browser_language
    sql: ${TABLE}.br_lang
  - dimension: browser_has_director_plugin
    sql: ${TABLE}.br_features_director
  - dimension: browser_has_flash_plugin
    sql: ${TABLE}.br_features_flash
  - dimension: browser_has_gears_plugin
    sql: ${TABLE}.br_features_gears
  - dimension: browser_has_java_plugin
    sql: ${TABLE}.br_features_java
  - dimension: browser_has_pdf_plugin
    sql: ${TABLE}.br_features_pdf
  - dimension: browser_has_quicktime_plugin
    sql: ${TABLE}.br_features_quicktime
  - dimension: browser_has_realplayer_plugin
    sql: ${TABLE}.br_features_realplayer
  - dimension: browser_has_silverlight_plugin
    sql: ${TABLE}.br_features_silverlight
  - dimension: browser_has_windowsmedia_plugin
    sql: ${TABLE}.br_features_windowsmedia
  - dimension: browser_supports_cookies
    sql: ${TABLE}.br_cookies
  - dimension_group: start
    type: time
    timeframes:
    - time
    - date
    - week
    - month
    sql: ${TABLE}.session_start_ts
  - measure: count
    type: count_distinct
    sql: ${session_id}
  - measure: visitors_count
    type: count_distinct
    sql: ${user_id}
  - measure: bounced_sessions_count
    type: count_distinct
    filters:
    - bounce: True
    sql: ${session_id}
  - measure: bounce_rate
    type: number
    sql: ${bounced_sessions_count}/NULLIF(${count},0)::REAL
  - measure: sessions_from_new_visitors_count
    type: count_distinct
    filters:
    - session_index: 1
    sql: ${session_id}
  - measure: sessions_from_returning_visitor_count
    type: number
    sql: ${count} - ${sessions_from_new_visitors_count}
  - measure: new_visitors_count_over_total_visitors_count
    type: number
    sql: ${sessions_from_new_visitors_count}/NULLIF(${count},0)::REAL
  - measure: returning_visitors_count_over_total_visitors_count
    type: number
    sql: ${sessions_from_returning_visitor_count}/NULLIF(${count},0)::REAL
  - measure: events_count
    type: sum
    sql: ${TABLE}.number_of_events
  - measure: events_per_session
    type: number
    sql: ${events_count}/NULLIF(${count},0)::REAL
  - measure: events_per_visitor
    type: number
    sql: ${events_count}/NULLIF(${visitors_count},0)::REAL
  - measure: country_count
    type: count_distinct
    sql: ${geography_country}
  - measure: region_count
    type: count_distinct
    sql: ${geography_region}
  - measure: city_count
    type: count_distinct
    sql: ${geography_city}
  - measure: zip_code_count
    type: count_distinct
    sql: ${geography_zipcode}
  - measure: campaign_medium_count
    type: count_distinct
    sql: ${campaign_medium}
  - measure: campaign_source_count
    type: count_distinct
    sql: ${campaign_source}
  - measure: campaign_term_count
    type: count_distinct
    sql: ${campaign_term}
  - measure: campaign_count
    type: count_distinct
    sql: ${campaign_name}
  - measure: referer_medium_count
    type: count_distinct
    sql: ${referer_medium}
  - measure: referer_source_count
    type: count_distinct
    sql: ${referer_source}
  - measure: referer_term_count
    type: count_distinct
    sql: ${referer_term}
  - measure: device_count
    type: count_distinct
    sql: ${device_type}
  - measure: operating_system_count
    type: count_distinct
    sql: ${operating_system}
  - measure: browser_count
    type: count_distinct
    sql: ${browser}

Contents

  • company_sessions.sql
  • company_sessions.sql
  • company_sessions.view.lkml
  • company_sessions.view.lookml