source 함수
source 함수
select * from {{ source("source_name", "table_name") }}
source 함수는 소스(source)에 대한 Relation을 반환하고, 소스와 현재 모델 사이에 의존성을 만들어요.
출처: 문서
본문
정의
이 함수는:
- source에 대한 Relation을 반환해요
- 소스와 현재 모델 사이에 의존성(dependency)을 만들어요. 문서화와 노드 선택에 유용해요
- 데이터베이스에서 전체 객체 이름으로 컴파일돼요
관련 가이드
인자(Arguments)
source_name:sources:키 아래 정의된name:table_name:tables:키 아래 정의된name:
예시
다음과 같이 정의된 소스를 생각해볼게요:
models/
sources:
- name: jaffle_shop # this is the source_name
database: raw
tables:
- name: customers # this is the table_name
- name: orders
모델에서 소스를 선택하려면:
models/orders.sql
select
...
from {{ source('jaffle_shop', 'customers') }}
left join {{ source('jaffle_shop', 'orders') }} using (customer_id)
더 알아보기 (Learn more)
source()는 원본 데이터(raw data)를 참조할 때 쓰는 함수예요. 모델 참조는ref()를 써요.- 관련 개념: ref, sources 문서.