DT Data Tools

SQL для CSV — запити SQL до файлів CSV, JSON і Parquet

Виконуйте SQL-запити до файлів CSV, TSV, JSON і Parquet прямо в браузері за допомогою DuckDB-wasm. Об'єднуйте файли, агрегуйте, фільтруйте та експортуйте результати в CSV.

🔒 Працює повністю у вашому браузері — нічого не завантажується

Drop CSV, TSV, JSON or Parquet files here or click to browse

Add several files to join them. Each file becomes a SQL view named after the file.

Ctrl/Cmd + Enter runs the query

Load a file or run the demo query. The DuckDB SQL engine (about 35 MB) downloads from this site on first use, then runs offline in your browser.

Advertisement

Запити до таблиць і файлів даних справжньою мовою SQL

Формули електронних таблиць чудово підходять для дрібних правок, але стають незручними, коли потрібно відфільтрувати тисячі рядків, згрупувати дані за кількома стовпцями або поєднати два експорти зі спільним ідентифікатором. SQL для CSV дає змогу працювати зі звичайними файлами даних як із таблицями бази даних. Перетягніть файл CSV, TSV, JSON або Parquet — і він одразу стане SQL-представленням (view) з назвою файлу, тож до sales_2024.csv можна звернутися запитом SELECT * FROM sales_2024. Додайте інші файли, і ви зможете з'єднувати їх через join, об'єднувати через union або порівнювати, нічого не імпортуючи на сервер бази даних.

Рушієм інструмента є DuckDB — аналітична база даних, створена для швидких запитів до стовпцевих даних. Її діалект SQL близький до PostgreSQL і підтримує з'єднання, GROUP BY, віконні функції, загальні табличні вирази (CTE), SUMMARIZE для миттєвої статистики за стовпцями, а також велику бібліотеку рядкових, датових і математичних функцій. Назви та типи стовпців визначаються автоматично, а панель схеми показує, що саме DuckDB визначив для кожного файлу.

Приватність за задумом: усе працює у вашому браузері

Багато онлайн-середовищ для SQL спершу просять завантажити ваші дані. Ця сторінка — ні. DuckDB скомпільовано у WebAssembly й працює у вашому браузері, тож додані файли зчитуються в пам'ять браузера й обробляються локально. На сервер нічого не надсилається, тому інструмент підходить для експортів клієнтських даних, фінансових звітів, журналів та іншої інформації, яку не варто передавати третім особам. Під час першого відвідування рушій (близько 35 МБ) завантажується з CDN; після цього браузер може зберегти його в кеші.

Поради для швидших і точніших запитів

Почніть із кнопок-прикладів: Preview rows показує вибірку рядків, Column stats запускає SUMMARIZE і відображає мінімуми, максимуми, частку порожніх значень (null) та кількість унікальних значень, а шаблон join дає відправну точку для поєднання двох файлів. Беріть у подвійні лапки назви стовпців, що містять пробіли або великі літери, наприклад "Order Date". Якщо стовпець CSV визначено з неправильним типом, перетворіть його явно за допомогою CAST(col AS DOUBLE) або TRY_CAST. Таблиця результатів показує до 1000 рядків, тоді як Export result as CSV зберігає всі рядки, які повернув запит. Оскільки файли зберігаються в пам'яті, робота з дуже великими наборами даних залежить від обсягу RAM, доступного браузеру; файли Parquet зазвичай є найкомпактнішим варіантом.

Як користуватися

  1. Додайте файлиПеретягніть один або кілька файлів CSV, TSV, JSON чи Parquet. Кожен із них стає SQL-представленням із назвою файлу.
  2. Перевірте схемуПерегляньте визначені назви стовпців, типи та кількість рядків для кожного завантаженого файлу.
  3. Напишіть і виконайте SQLВиберіть приклад запиту або напишіть власний, а потім натисніть Run query або Ctrl/Cmd + Enter.
  4. Експортуйте результатЗавантажте повний результат запиту у вигляді файлу CSV.

Часті запитання

Чи завантажуються мої файли на сервер?
Ні. Файли зчитуються в пам'ять вашого браузера, а запити до них виконує DuckDB, скомпільований у WebAssembly. Сам рушій завантажується з CDN, і ваші дані ніколи не залишають ваш пристрій.
Які формати файлів можна опрацьовувати?
CSV, TSV і текстові таблиці, масиви JSON або JSON із розділенням за рядками (NDJSON/JSON Lines), а також Apache Parquet. Назви й типи стовпців визначаються автоматично.
Який діалект SQL підтримується?
SQL DuckDB, близький до PostgreSQL. Можна використовувати з'єднання, GROUP BY, віконні функції, CTE, SUMMARIZE, рядкові та датові функції й багато іншого.
Скільки рядків я можу побачити?
Таблиця результатів показує перші 1000 рядків, щоб сторінка залишалася чутливою. Експорт у CSV містить усі рядки, які повернув запит.
Наскільки великими можуть бути мої файли?
Файли повністю завантажуються в пам'ять браузера, тож практичні обмеження залежать від вашого пристрою. Файли розміром від кількох десятків до кількох сотень мегабайтів зазвичай добре працюють у браузері на комп'ютері.
Advertisement