Построение запросов в DataStore
DataStore предоставляет методы построения запросов в стиле SQL, которые транслируются в оптимизированные SQL-запросы. Все операции остаются ленивыми до тех пор, пока не понадобятся результаты.
Обзор методов построения запросов
| Метод | SQL-эквивалент | Описание |
|---|---|---|
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
Удаляет дубликаты строк.
Примеры:
Группировка
groupby
Группировать строки по одному или нескольким столбцам. Возвращает объект LazyGroupBy.
Примеры:
having
Фильтрация групп после агрегации.
Примеры:
Соединения
join
Объединяет два хранилища данных (DataStore).
Параметры:
| Параметр | Тип | Значение по умолчанию | Описание |
|---|---|---|---|
right | DataStore | обязательный | Правый DataStore для объединения |
on | str/list | None | Столбцы, по которым выполняется объединение |
how | str | 'inner' | Тип объединения (join): 'inner', 'left', 'right', 'outer' |
left_on | str/list | None | Столбцы для левого объединения (join) |
right_on | str/list | None | Столбцы для правого объединения (join) |
Примеры:
union
Объединяет результаты двух DataStore.
Примеры:
Условные выражения
when
Создаёт выражения CASE WHEN.
Примеры:
Сырой SQL
run_sql / sql
Выполняйте произвольные SQL-запросы.
Примеры:
to_sql
Позволяет просмотреть сгенерированный SQL без выполнения.
Примеры:
Цепочки вызовов методов
Все методы построения запроса поддерживают флюентный интерфейс и могут вызываться цепочкой:
Псевдонимы
as_
Устанавливает псевдоним для столбца или подзапроса.
Примеры: