-
Notifications
You must be signed in to change notification settings - Fork 3
Open
Description
(draft - in progress)
Issue
- Main Query 가
QUALIFY절로 끝나는 경우 오른쪽 정렬이 깨지는 문제 - 참고 - QUALIFY 키워드와 오른쪽 정렬 규칙 #3 (comment)
Style 1 - Dummy Prefix
WHERE TRUE혹은AND TRUE와 같이 Logic에 영향을 주지 않는 Dummy를 추가하여 정렬을 맞추는 방법
SELECT *
FROM base_table
WHERE TRUE QUALITY ROW_NUMBER() OVER (PARTITION BY ... ORDER BY created_dt DESC) = 1
혹은,
SELECT *
FROM base_table
WHERE col1 IS NOT NULL
AND TRUE QUALITY ROW_NUMBER() OVER (PARTITION BY ... ORDER BY created_dt DESC) = 1
Style 2 - Aggregate Function
분석함수(윈도우함수)가 아닌 집계 함수를 이용하여 동일한 결과가 나오도록 코드 구조 변경. 경우에 따라 더 나은 성능을 보이기도 함.
QUALITY ROW_NUMBER() OVER (PARTITION BY ... ORDER BY created_dt DESC) = 1
【Workaround】
ANY_VALUE( .. HAVING MAX )MAX_BY/MIN_BYARRAY_AGG- 정렬조건이 2개 이상인 경우
(TBD)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels