LKML Subscription reading

Members

Members model for subscription reading.

inferred

Blocks

members.view.lkml · 174 lines
inferred
view: members {
  sql_table_name: warehouse.members ;;

  dimension: amount_paid {
    type: number
    sql: ${TABLE}.amount_paid ;;
  }

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

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

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

  dimension: days_subscribed {
    type: number
    sql: ${TABLE}.days_subscribed ;;
  }

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

  dimension: first_sub_start_yesno {
    type: yesno
    sql: COALESCE(${TABLE}.first_sub_start_date, '') != '' ;;
  }

  dimension: first_sub_start_yesno_2 {
    type: yesno
    sql: COALESCE(unix_timestamp(${TABLE}.first_sub_start_date), 0) != 0 ;;
  }

  dimension: first_sub_start_dow {
    sql: dayname(${TABLE}.first_sub_start_date) ;;
  }

  dimension: first_sub_start_dow_num {
    sql: CONCAT(cast(dayofweek(${TABLE}.first_sub_start_date)-1 as string), ' - ', dayname(${TABLE}.first_sub_start_date)) ;;
  }

  dimension: first_sub_start_week {
    type: date
    sql: to_date(date_sub(${TABLE}.first_sub_start_date, (dayofweek(${TABLE}.first_sub_start_date)+5)%7)) ;;
  }

  dimension: free_trial_days {
    type: number
    sql: ${TABLE}.free_trial_days ;;
  }

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

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

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

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

  dimension: sub_end {
    type: time
    sql: ${TABLE}.sub_end_date ;;
  }

  dimension: sub_end_yesno {
    type: yesno
    sql: COALESCE(${TABLE}.sub_end_date, '') != '' ;;
  }

  dimension: sub_end_yesno_2 {
    type: yesno
    sql: COALESCE(unix_timestamp(${TABLE}.sub_end_date), 0) != 0 ;;
  }

  dimension: sub_end_dow {
    sql: dayname(${TABLE}.sub_end_date) ;;
  }

  dimension: sub_end_dow_num {
    sql: CONCAT(cast(dayofweek(${TABLE}.sub_end_date)-1 as string), ' - ', dayname(${TABLE}.sub_end_date)) ;;
  }

  dimension: sub_end_week {
    type: date
    sql: to_date(date_sub(${TABLE}.sub_end_date, (dayofweek(${TABLE}.sub_end_date)+5)%7)) ;;
  }

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

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

  dimension: sub_start {
    type: time
    sql: ${TABLE}.sub_start_date ;;
  }

  dimension: sub_start_yesno {
    type: yesno
    sql: COALESCE(${TABLE}.sub_start_date, '') != '' ;;
  }

  dimension: sub_start_yesno_2 {
    type: yesno
    sql: COALESCE(unix_timestamp(${TABLE}.sub_start_date), 0) != 0 ;;
  }

  dimension: sub_start_dow {
    sql: dayname(${TABLE}.sub_start_date) ;;
  }

  dimension: sub_start_dow_num {
    sql: CONCAT(cast(dayofweek(${TABLE}.sub_start_date)-1 as string), ' - ', dayname(${TABLE}.sub_start_date)) ;;
  }

  dimension: sub_start_week {
    type: date
    sql: to_date(date_sub(${TABLE}.sub_start_date, (dayofweek(${TABLE}.sub_start_date)+5)%7)) ;;
  }

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

  dimension: word_user_id {
    type: int
    primary_key: yes
    sql: ${TABLE}.word_user_id ;;
  }

  dimension_group: first_sub_start {
    type: time
    timeframes: [time, date, hod, hour, tod, month, month_num, year]
    sql: ${TABLE}.first_sub_start_date ;;
  }

  measure: total_amount_paid {
    type: sum
    sql: ${amount_paid} ;;
  }

  measure: count {
    type: count
  }

  measure: count_active {
    type: count
    filters: [currently_active: "Yes"]
  }

  measure: count_trialing {
    type: count
    filters: [currently_trialing: "Yes"]
  }
}
members.view.lookml · 110 lines
source-preserved
- view: members
  sql_table_name: warehouse.members
  fields:
  - dimension: amount_paid
    type: number
    sql: ${TABLE}.amount_paid
  - dimension: cancel_reason
    sql: ${TABLE}.cancel_reason
  - dimension: currently_active
    type: yesno
    sql: ${TABLE}.currently_active = 1
  - dimension: currently_trialing
    type: yesno
    sql: ${TABLE}.currently_trialing = 1
  - dimension: days_subscribed
    type: number
    sql: ${TABLE}.days_subscribed
  - dimension: doc_id
    sql: ${TABLE}.doc_id
  - dimension: first_sub_start_yesno
    type: yesno
    sql: COALESCE(${TABLE}.first_sub_start_date, '') != ''
  - dimension: first_sub_start_yesno_2
    type: yesno
    sql: COALESCE(unix_timestamp(${TABLE}.first_sub_start_date), 0) != 0
  - dimension: first_sub_start_dow
    sql: dayname(${TABLE}.first_sub_start_date)
  - dimension: first_sub_start_dow_num
    sql: CONCAT(cast(dayofweek(${TABLE}.first_sub_start_date)-1 as string), ' - ', dayname(${TABLE}.first_sub_start_date))
  - dimension: first_sub_start_week
    type: date
    sql: to_date(date_sub(${TABLE}.first_sub_start_date, (dayofweek(${TABLE}.first_sub_start_date)+5)%7))
  - dimension: free_trial_days
    type: number
    sql: ${TABLE}.free_trial_days
  - dimension: platform
    sql: ${TABLE}.platform
  - dimension: read_profile
    sql: ${TABLE}.read_profile
  - dimension: referral_source
    sql: ${TABLE}.referral_source
  - dimension: referral_type
    sql: ${TABLE}.referral_type
  - dimension: sub_end
    type: time
    sql: ${TABLE}.sub_end_date
  - dimension: sub_end_yesno
    type: yesno
    sql: COALESCE(${TABLE}.sub_end_date, '') != ''
  - dimension: sub_end_yesno_2
    type: yesno
    sql: COALESCE(unix_timestamp(${TABLE}.sub_end_date), 0) != 0
  - dimension: sub_end_dow
    sql: dayname(${TABLE}.sub_end_date)
  - dimension: sub_end_dow_num
    sql: CONCAT(cast(dayofweek(${TABLE}.sub_end_date)-1 as string), ' - ', dayname(${TABLE}.sub_end_date))
  - dimension: sub_end_week
    type: date
    sql: to_date(date_sub(${TABLE}.sub_end_date, (dayofweek(${TABLE}.sub_end_date)+5)%7))
  - dimension: sub_plan
    sql: ${TABLE}.sub_plan
  - dimension: sub_signup_type
    sql: ${TABLE}.sub_signup_type
  - dimension: sub_start
    type: time
    sql: ${TABLE}.sub_start_date
  - dimension: sub_start_yesno
    type: yesno
    sql: COALESCE(${TABLE}.sub_start_date, '') != ''
  - dimension: sub_start_yesno_2
    type: yesno
    sql: COALESCE(unix_timestamp(${TABLE}.sub_start_date), 0) != 0
  - dimension: sub_start_dow
    sql: dayname(${TABLE}.sub_start_date)
  - dimension: sub_start_dow_num
    sql: CONCAT(cast(dayofweek(${TABLE}.sub_start_date)-1 as string), ' - ', dayname(${TABLE}.sub_start_date))
  - dimension: sub_start_week
    type: date
    sql: to_date(date_sub(${TABLE}.sub_start_date, (dayofweek(${TABLE}.sub_start_date)+5)%7))
  - dimension: sub_type
    sql: ${TABLE}.sub_type
  - dimension: word_user_id
    type: int
    primary_key: true
    sql: ${TABLE}.word_user_id
  - dimension_group: first_sub_start
    type: time
    timeframes:
    - time
    - date
    - hod
    - hour
    - tod
    - month
    - month_num
    - year
    sql: ${TABLE}.first_sub_start_date
  - measure: total_amount_paid
    type: sum
    sql: ${amount_paid}
  - measure: count
    type: count
  - measure: count_active
    type: count
    filters:
    - currently_active: Yes
  - measure: count_trialing
    type: count
    filters:
    - currently_trialing: Yes

Contents

  • members.view.lkml
  • members.view.lookml