set

使用状況

ビュー: view_name {
set: set_name [
fields: [field, field, ...]
}
}
階層
set
使用可能なフィールドタイプ
ディメンション、ディメンション グループ、フィルタ フィールド、測定

許可
角かっこで囲まれたフィールド名のリスト

定義

セットは、フィールドのリストを必要とする fields(結合の場合)drill_fields(フィールドの場合)などの他のパラメータで参照される場合に便利です。

各セットは set パラメータを使用して定義します。セットには、ディメンション グループによって生成された個々のディメンションを含め、現在のビューの任意の数のディメンション、メジャー、またはフィルタ フィールドを含めることができます。また、view_name.field_name 構文を使用して他のビューのフィールドを含めることもできます。

次の例のように、set パラメータ内に fields パラメータを追加してフィールドを一覧表示します。

set: my_first_set {
  fields: [
    dimension_one,
    another_view.dimension_two,
    measure_one
  ]
}

セットには他のセットを含めることもできます。セット名とディメンションまたはメジャーの名前を区別するには、* 文字を追加します。例:

set: my_first_set {
  fields: [
    dimension_one,
    another_view.dimension_two,
    measure_one
  ]
}

set: my_second_set {
  fields: [
    dimension_three,
    measure_two
  ]
}

set: my_third_set {
  fields: [
    my_first_set*,
    my_second_set*
  ]
}

my_third_set という名前のセットには、次のフィールドが含まれます。

  • dimension_one
  • another_view.dimension_two
  • measure_one
  • dimension_three
  • measure_two

最後に、- 文字を使用してフィールドを除外できます。例:

set: my_first_set {
  fields: [
    dimension_one,
    another_view.dimension_two,
    measure_one
  ]
}

set: my_second_set {
  fields: [
    dimension_three,
    measure_two
  ]
}

set: my_third_set {
  fields: [
    my_first_set*,
    my_second_set*
  ]
}

set: my_fourth_set {
  fields: [
    my_first_set*,
    -measure_one
  ]
}

my_fourth_set という名前のセットには、次のフィールドが含まれます。

  • dimension_one
  • another_view.dimension_two

financial_data という名前のセットを作成します。

set: financial_data {
  fields: [
    subtotal,
    shipping,
    tax,
    total,
    cost,
    profit
  ]
}

[Customers] ビューにも basic_customer_data というセットを作成します。これは [Customer Order Facts] ビューも参照します。

set: basic_customer_data {
  fields: [
    name,
    address,
    status,
    customer_order_facts.lifetime_orders,
    customer_order_facts.lifetime_revenue
  ]
}

一般的な課題

別のビューのフィールドは、set が使用されている Explore に結合する必要があります。

set 内の別のビューのフィールドを参照する場合は、そのビューが set が使用されている Explore に結合されている必要があります。たとえば、以下は機能しません。

モデルファイル

explore: orders { ... }

ファイルを表示

view: orders {
  set: customer_info {
    fields: [customer.name]
  }
}

ここでは、customersorders に結合されていないため、customers のフィールドを customer_info セットで参照することはできません。

dimension_group からセットにフィールドを追加する

dimension_group のフィールドをセットに追加する場合は、それぞれの期間ディメンションを個別に追加する必要があります。たとえば、次の dimension_group について考えてみます。

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

次のようなセットでは、日、週、月のディメンションを追加できません。

set: created_timeframes {
  fields: [created]
}

代わりに、次のように個別に時間枠を追加する必要があります。

set: created_timeframes {
  fields: [
    created_date,
    created_week,
    created_month
  ]
}