이 페이지에서는
sql_table_name매개변수를 설명합니다. 이 매개변수는 Explore의 일부입니다.
sql_table_name은 뷰의 일부로도 사용할 수 있으며,sql_table_name(뷰용) 매개변수 문서 페이지에 설명되어 있습니다.
sql_table_name은 조인의 일부로도 사용할 수 있으며,sql_table_name(조인용) 매개변수 문서 페이지에 설명되어 있습니다.
사용
explore: explore_name {
sql_table_name: table_name ;;
}
sql_table_name |
기본값
Explore의 뷰가 기반으로 하는 데이터베이스 테이블
허용
데이터베이스 테이블의 이름
특수 규칙
|
정의
sql_table_name 매개변수는 Explore에서 쿼리할 데이터베이스의 테이블을 지정합니다. 일반적으로 Explore의 이름이 지정된 뷰는 쿼리할 테이블을 정의합니다. 하지만 여러 테이블의 구조가 동일한 경우 explore 매개변수 아래의 sql_table_name 매개변수를 사용하여 뷰 파일에 지정된 기본 테이블을 재정의할 수 있습니다. 이렇게 하면 뷰 파일에 정의한 측정기준과 측정값을 뷰 파일에 지정된 테이블이 아닌 데이터베이스 테이블에 적용할 수 있습니다.
테이블 이름 범위 지정
테이블 이름만 사용하여 테이블을 참조하면 Looker는 Looker 관리자가 데이터베이스 연결의 설정에서 구성한 기본 검색 경로 (데이터베이스 및 스키마)를 사용합니다. 자세한 내용은 이 페이지의 고려사항 섹션을 참고하세요.
데이터베이스 사용자의 기본 검색 경로에 없는 다른 데이터베이스 및 스키마의 테이블을 참조해야 하는 경우 <database_name>.<schema_name>.<table_name> 형식을 사용하여 다른 데이터베이스 또는 스키마를 가리키도록 테이블 이름을 범위 지정할 수 있습니다.
- 다른 스키마의 테이블을 참조하려면 이 페이지의 예와 같이
<schema_name>.<table_name>을 사용합니다. - 다른 데이터베이스의 테이블을 참조하려면 전체
<database_name>.<schema_name>.<table_name>을 사용합니다.
Google BigQuery 연결의 경우 <project_name>.<dataset_name>.<table_name> 형식으로 테이블 이름을 범위 지정하여 다른 프로젝트 및 데이터 세트의 테이블을 참조할 수 있습니다. 자세한 내용은 Google BigQuery 연결 문서 페이지를 참고하세요.
예시
이 예에서는 customers Explore가 기본 데이터베이스/스키마의 customer_1 테이블을 사용하도록 합니다.
explore: customers {
sql_table_name: customer_1 ;;
}
이 예에서는 테이블 이름을 범위 지정하여 스키마 이름을 포함하도록 하여(analytics 스키마의 customer_1 테이블을 사용하도록 customers Explore를 만듭니다(<schema_name>.<table_name> 형식 사용).
explore: customers {
sql_table_name: analytics.customer_1 ;;
}
고려사항
sql_table_name에서 참조하는 테이블은 현재 연결에서 액세스할 수 있어야 합니다.
sql_table_name 매개변수가 explore 객체 내에서 사용되면 해당 explore 객체는 모델 객체에 포함됩니다. (이 페이지의 계층 구조는 이 관계 체인을 보여줍니다.) 모델 객체에는 데이터베이스 connection이 정의되어 있습니다. sql_table_name 매개변수에서 데이터베이스 테이블을 참조할 때 테이블은 모델 파일에 지정된 연결 내에서 액세스할 수 있어야 합니다.
기본 데이터베이스 및 스키마 (또는 Google BigQuery의 경우 결제 프로젝트 및 데이터 세트)는 Looker 관리자가 데이터베이스에 대한 Looker 연결을 만들 때 정의합니다.
기본 테이블과 다른 이름으로 view 이름을 지정하려면 view 수준에서 sql_table_name을 적용합니다.
이 페이지에 설명된 대로 explore 수준에서 sql_table_name을 사용하는 것은 일반적이지 않습니다. 동일한 view가 여러 테이블을 설명할 수 있는 경우에만 사용해야 합니다.
더 일반적인 방법은 기본 테이블 이름과 다른 이름으로 뷰 이름을 지정하려는 경우 view 수준에서 sql_table_name를 사용하는 것입니다.
즉, 다음을 수행하는 대신
모델 파일
explore: customers {
sql_table_name: customer_1 ;;
}
다음과 같이 합니다.
모델 파일
explore: customers { ... }
뷰 파일
view: customers {
sql_table_name: customer_1 ;;
}