Запрос нескольких файлов паркета в диапазоне с помощью DuckDBPython

Программы на Python
Ответить
Anonymous
 Запрос нескольких файлов паркета в диапазоне с помощью DuckDB

Сообщение Anonymous »

У меня есть файлы паркета, организованные в этом формате

Код: Выделить всё

/db/{year}/table{date}.parquet
В папке каждого года содержится до 365 файлов.
Если я хочу запросить данные из временного диапазона, скажем, с недели с 28 апреля 2024 г. по 4 мая 2024 г., я могу использовать

Код: Выделить всё

SELECT
count(*) as count,
FROM read_parquet('/db/2024/table*.parquet')
WHERE date >= '2024-04-28' and date < '2024-05-05'
Но мне не нужно читать все файлы в /db/2024/table*.parquet. Я точно знаю, в каких семи файлах содержатся нужные мне данные. Как мне определить это в DuckDB? Я использую Питон. Я мог бы выполнить собственную фильтрацию и поместить все файлы в список Python, например имена файлов.
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»