always_join

사용


explore: explore_name {
  always_join: [
    view_name,
    view_name,
    ...
  ]
}
계층 구조
always_join
기본값
없음

수락
쉼표로 구분된 뷰 이름 목록이 포함된 대괄호

특별 규칙
always_join에서 explore를 사용하려면 먼저 뷰에 조인해야 합니다.

정의

always_join는 사용자가 조인된 뷰에서 필드를 선택하지 않은 경우에도 Looker가 생성하는 SQL에 하나 이상의 조인을 포함하도록 강제합니다. [view_name_a, view_name_b, etc]처럼 쉼표로 구분된 목록을 사용하여 여러 조인이 필요할 수 있습니다.

Looker는 쿼리에 대한 SQL을 생성할 때 가능한 가장 깔끔한 SQL을 만들려고 시도하며 사용자가 선택한 필드에 필요한 조인만 사용합니다. always_join을 사용하면 어떤 경우에도 조인이 발생하도록 강제할 수 있습니다.

always_jointype 매개변수를 사용하여 조인이 실행되고 조인이 LEFT JOIN이 아닌 경우 유용할 수 있습니다. 이러한 상황에서는 반환되는 행을 올바르게 제한하는 데 조인이 중요할 수 있습니다.

예시

사용자가 member에서 필드를 선택하지 않더라도 member는 항상 event에 조인되어야 합니다. 이렇게 하면 회원 생성 이벤트만 결과에 표시됩니다.

explore: event {
  always_join: [member]
  join: member {
    sql_on: ${event.member_id} = ${member.id} ;;
    type: inner
  }
}

사용자가 이러한 뷰에서 필드를 선택하지 않더라도 memberpayment가 항상 event에 조인되도록 합니다. 이렇게 하면 회원이 이미 결제한 회원 생성 이벤트만 결과에 표시됩니다.

explore: event {
  always_join: [member, payment]
  join: member {
    sql_on: ${event.member_id} = ${member.id} ;;
    type: inner
  }
  join: payment {
    sql_on: ${member.payment_id} = ${payment.id} ;;
    type: inner
  }
}

일반 과제

always_join에서 참조하려면 뷰를 Explore에 조인해야 합니다.

뷰를 always_join에 배치하려면 always_join가 사용되는 Explore에 뷰가 조인되어 있는지 확인하세요. 예를 들어 다음은 작동하지 않습니다.

explore: event {
  always_join: [member]
}

여기서는 member 뷰가 event에 조인되지 않았으므로 always_join에서 사용할 수 없습니다.

알아 두어야 할 사항

가능하면 조인에 비즈니스 로직을 적용하지 마세요.

조인에 대한 표준 Looker 접근 방식은 가능하면 LEFT JOIN을 사용하는 것입니다. 이전 예에서는 조인 자체 내에서 비즈니스 로직을 적용할 수 있도록 LEFT JOIN를 피합니다. 한 예에서는 회원과 연결된 이벤트만 포함하는 Explore를 만들었습니다.

explore: event {
  always_join: [member]
  join: member {
    sql_on: ${event.member_id} = ${member.id} ;;
    type: inner
  }
}

Looker에서 이를 실행하는 기본 방법은 LEFT JOIN를 사용하여 이벤트 데이터와 회원 데이터를 간단하게 함께 가져오는 것입니다.

explore: event {
  join: member {
    sql_on: ${event.member_id} = ${member.id} ;;
  }
}

그런 다음 회원 이벤트만 확인하도록 예 또는 아니오로 설정할 수 있는 측정기준을 만들 수 있습니다.

dimension: is_member_event {
  type: yesno
  sql: ${member.id} IS NOT NULL ;;
}

이 방법을 사용하면 사용자가 모든 이벤트를 보거나 회원 이벤트만 볼 수 있습니다. 조인을 통해 사용자가 회원 이벤트만 보도록 강제하지 않았습니다.

탐색에 always_join가 포함되면 full_suggestions의 기본값이 yes로 전환됩니다.

Explore에 always_join 매개변수가 포함되면 full_suggestions의 기본값이 yes로 전환됩니다. 이렇게 하면 탐색 분석 로직을 사용하여 추천 쿼리가 실행되므로 always_join가 적용되어 반환되는 추천이 좁혀지고 추천 목록이 사용자가 액세스할 수 있는 데이터로만 제한됩니다.

full_suggestionsno로 수동으로 설정하면 필터 추천 쿼리가 실행되지 않습니다.