DataStore 쿼리 작성
DataStore는 최적화된 SQL 쿼리로 컴파일되는 SQL 스타일의 쿼리 작성 메서드를 제공합니다. 결과가 실제로 필요해질 때까지 모든 연산은 지연 평가됩니다.
쿼리 메서드 개요
| Method | SQL Equivalent | 설명 |
|---|---|---|
select(*cols) | SELECT cols | 컬럼 선택 |
filter(cond) | WHERE cond | 행 필터링 |
where(cond) | WHERE cond | filter의 별칭 |
sort(*cols) | ORDER BY cols | 행 정렬 |
orderby(*cols) | ORDER BY cols | sort의 별칭 |
limit(n) | LIMIT n | 행 수 제한 |
offset(n) | OFFSET n | 행 건너뛰기 |
distinct() | DISTINCT | 중복 제거 |
groupby(*cols) | GROUP BY cols | 행 그룹화 |
having(cond) | HAVING cond | 그룹 필터링 |
join(right, ...) | JOIN | DataStore 간 조인 |
union(other) | UNION | 결과 결합 |
선택
select
DataStore에서 특정 컬럼만 조회합니다.
예제:
필터링
filter / where
조건에 따라 행을 필터링합니다. 두 메서드는 동일하게 동작합니다.
예시:
Pandas 스타일 필터링
정렬
sort / orderby
행을 하나 이상의 컬럼 기준으로 정렬합니다.
예제:
결과 제한 및 페이지네이션
limit
결과로 반환되는 행 수를 제한합니다.
offset
처음 n개 행을 건너뜁니다.
예제:
DISTINCT
distinct
중복 행을 제거합니다.
예제:
그룹화
groupby
하나 이상의 컬럼을 기준으로 행을 그룹화합니다. LazyGroupBy 객체를 반환합니다.
예제:
having
집계가 완료된 후 그룹을 필터링합니다.
예제:
조인
join
두 DataStore를 조인합니다.
매개변수:
| Parameter | Type | Default | Description |
|---|---|---|---|
right | DataStore | required | 조인할 오른쪽 DataStore |
on | str/list | None | 조인에 사용할 컬럼(들) |
how | str | 'inner' | 조인 유형: 'inner', 'left', 'right', 'outer' |
left_on | str/list | None | 왼쪽 조인에서 사용할 컬럼(들) |
right_on | str/list | None | 오른쪽 조인에서 사용할 컬럼(들) |
예시:
union
두 개의 DataStore 결과를 합칩니다.
예시:
조건식
when
CASE WHEN 표현식을 생성합니다.
예시:
원시 SQL
run_sql / sql
원시 SQL 쿼리를 실행합니다.
예시:
to_sql
생성된 SQL을 실행하지 않고 확인할 수 있습니다.
예제:
메서드 체이닝
모든 쿼리 메서드는 메서드 체이닝 방식으로 연속 호출을 지원합니다:
별칭 지정
as_
컬럼이나 서브쿼리에 대한 별칭을 설정합니다.
예제: