CSV TO SQLITE

Convert CSV to SQLite Online

Import a spreadsheet export, join it with another, and let SQL do the heavy lifting. Your CSV becomes a table. Your browser becomes the database.

-- After importing customers.csv and orders.csv
SELECT
  customers.name,
  SUM(CAST(orders.total AS REAL)) AS revenue
FROM customers
JOIN orders
  ON customers.id = orders.customer_id
GROUP BY customers.name
ORDER BY revenue DESC;
Two CSV files. One useful answer.
01

Preview before importing

Choose a CSV or TSV file. Review its delimiter, header row, column names, and sample values. UTF-8 files work best.

02

Keep types intentional

Columns start as TEXT to preserve IDs and leading zeros. Choose INTEGER or REAL for numeric columns; invalid values stop and roll back the import.

03

Query, join, and download

Import additional CSVs into the same database. Run a JOIN across tables, then export the database as a portable .sqlite file.

A FEW DETAILS

Before you dive in.

Everything runs locally. Here is what to expect.

Choosing types for CSV columns
Can I import more than one CSV?

Yes. Select multiple CSV files and review them one at a time. Each file becomes its own table in the current workspace.

Will my original CSV file change?

No. SQLite Lab reads your file and builds a separate table. Exports create new downloads; your source file is unchanged.

What happens to empty values and numbers?

TEXT columns preserve empty strings and values exactly. In INTEGER or REAL columns, empty or whitespace-only cells become NULL. INTEGER supports SQLite’s signed 64-bit range; REAL uses floating-point values.

What happens if the import fails?

The newly created table and its rows are rolled back. Existing tables remain intact. Check the delimiter, header, column count, and chosen data types before retrying.

Try a concrete task

Open a sample dataset and inspect its tables and relationships. Use the SQL reference for examples with expected output, or follow a guided practice path. To investigate query access patterns, select one SELECT and use Explain in the workspace.