SQL 파이프라인 구문
적용 대상: Databricks Runtime 16.2 이상
Azure Databricks는 연결된 연산자의 조합으로 쿼리를 작성할 수 있는 SQL 파이프라인 구문을 지원합니다.
- 모든 쿼리는 파이프 문자
|>
로 구분된 접미사로 0개 이상의 파이프 연산자를 포함할 수 있습니다. - 각 파이프 작업에는 하나 이상의 SQL 키워드와 해당 작업의 문법이 포함되어 시작됩니다.
- 연산자는 순서에 따라 여러 번 적용할 수 있습니다.
- 일반적으로 FROM relation_name 파이프라인을 시작하는 데 사용되지만 쿼리 파이프라인을 시작할 수 있습니다.
통사론
{ FROM | TABLE } relation_name { |> piped_operation } [ ...]
매개 변수
-
파이프라인의 입력으로 사용할 테이블 또는 뷰를 식별합니다. 테이블 또는 뷰를 찾을 수 없으면 Azure Databricks에서 TABLE_OR_VIEW_NOT_FOUND 오류가 발생합니다.
-
이전 쿼리 또는 파이프 작업을 소비하는 작업입니다. 자세한 내용은 piped_operation 참조하세요.
본보기
ANSI SQL로 작성된 TPC-H 벤치마크의 쿼리 13입니다.
> SELECT c_count, COUNT(*) AS custdist
FROM
(SELECT c_custkey, COUNT(o_orderkey) c_count
FROM customer
LEFT OUTER JOIN orders ON c_custkey = o_custkey
AND o_comment NOT LIKE '%unusual%packages%'
GROUP BY c_custkey
) AS c_orders
GROUP BY c_count
ORDER BY custdist DESC, c_count DESC;
SQL 파이프 연산자를 사용하여 동일한 논리를 작성하려면 다음과 같이 표현할 수 있습니다.
> FROM customer
|> LEFT OUTER JOIN orders ON c_custkey = o_custkey
AND o_comment NOT LIKE '%unusual%packages%'
|> AGGREGATE COUNT(o_orderkey) c_count
GROUP BY c_custkey
|> AGGREGATE COUNT(*) AS custdist
GROUP BY c_count
|> ORDER BY custdist DESC, c_count DESC;