Inkwell Data / SQL on files

Run SQL on your files

Load one or more files and query them with real SQL. Joins, GROUP BY, window functions, CTEs, all powered by DuckDB running in this tab.

1 Add your files
Drop files here to load them as tables CSV, TSV, Excel (.xlsx), JSON, JSON Lines or Parquet · stays on your device

How it works

Each file becomes a table named after the file (for example sales_2026.csv becomes sales_2026). Column types are detected automatically. Write a query, press Ctrl+Enter (or ⌘+Enter) to run it, and export the results to CSV, Excel, JSON or Parquet.

The SQL engine is DuckDB, compiled to WebAssembly. It downloads once (about 8 MB) the first time you open this tool and then runs entirely on your device.

Questions

Are my files uploaded anywhere?

No. Your file is read by your own browser and processed on your device. There is no server receiving your data, no account, and nothing is stored after you close the tab.

Which SQL dialect is this?

DuckDB SQL, which is very close to PostgreSQL. It supports joins, CTEs, window functions, QUALIFY, PIVOT, regular expressions, date functions and much more.

Can I join two CSV files with SQL?

Yes. Load both files, then write something like SELECT * FROM orders o JOIN customers c ON o.customer_id = c.id.

Can I create new tables?

Yes. CREATE TABLE ... AS SELECT works, and new tables appear in the table list so you can query them in later steps.

Do my tables stay after I close the page?

No. Everything lives in memory in this tab and disappears when you close or reload it. Export any results you want to keep.