Online SQL editors
Free online SQL editors in 2026: 10 options compared
For practicing SQL, DB Fiddle runs MySQL 5.5 to 9 and PostgreSQL 9.4 to 19 beta on a server; to query your own file, rows.page runs DuckDB SQL on CSV, JSON or Parquet files up to 1.5 GB in your browser, free with no signup.
No file handy? Open CO2 emissions by country and year (50k rows, 14 MB).
Which free online SQL editor should you use? 10 compared
Most online SQL editors do one of two jobs: practicing queries on sample or hand-written tables, or running SQL on a file you already have. The table shows which is which.
| Editor | Engines | Runs | Load your own file | Price |
|---|---|---|---|---|
| DB Fiddle | MySQL 5.5 to 9, MariaDB, PostgreSQL 9.4 to 19 beta, SQLite 3.30 to 3.46 | Server | No | Free; private fiddles need PRO |
| SQL Fiddle | SQL Server, SQLite, PostgreSQL, MySQL, MariaDB, Oracle | Server | Not documented | Free; AI features need a login |
| OneCompiler | 16 databases, including MySQL, PostgreSQL, SQL Server and DuckDB | Server | Not documented | Free |
| W3Schools SQL Tryit | WebSQL where available, else a server | Browser or server | No (fixed sample tables) | Free |
| sqlime | SQLite | Browser | SQLite database file or URL | Free (MIT) |
| SQLite Online | SQLite, DuckDB, PGlite; MariaDB, PostgreSQL, SQL Server on a server | Browser or server | CSV import | Free, no signup |
| DuckDB Web Shell | DuckDB-WASM | Browser | Files over HTTPS, or local files with .files add | Free |
| Datasette Lite | SQLite | Browser | CSV or Parquet from a URL (CORS needed) | Free |
| MotherDuck | DuckDB | Cloud | CSV, JSON or Parquet upload | Free Lite; Business $250/org/month + usage |
| rows.page | DuckDB-WASM | Browser | CSV, TSV, JSON, JSONL or Parquet (text files up to 1.5 GB) | Free, no signup |
Online SQL editors for practicing queries and testing versions
DB Fiddle
DB Fiddle runs your queries on a server and lets you pick the engine version: MySQL 5.5 to 9, MariaDB, PostgreSQL 9.4 to 19 beta or SQLite 3.30 to 3.46. There is no file upload, so you build test data with CREATE TABLE and INSERT in the Schema SQL pane. It is free, and private fiddles need a PRO upgrade.
SQL Fiddle
SQL Fiddle is a free, ad-free playground for SQL Server, SQLite, PostgreSQL, MySQL, MariaDB, Oracle and Oracle PL/SQL, with queries run on its server. The editor works without an account, but its AI chat and query generator need a login.
OneCompiler
OneCompiler is a free online editor that runs code on its servers and covers 16 databases, including MySQL, PostgreSQL, SQL Server, Oracle, SQLite, DuckDB and ClickHouse. You pick a database, write a script with your own CREATE TABLE and INSERT statements, and run it.
W3Schools SQL Tryit
W3Schools SQL Tryit is built for learning, with fixed sample tables you can query straight away. It uses your browser's WebSQL where available and a server otherwise, and it has no way to load your own data.
sqlime
sqlime is a SQLite playground compiled to WebAssembly, so queries run in your browser with no server. It opens a SQLite database file from your computer or a URL, and can save queries and data as private GitHub gists you share by link. It is free and MIT-licensed.
Online SQL editors that query your own CSV, JSON or Parquet file
SQLite Online
SQLite Online runs SQLite, DuckDB and PGlite (PostgreSQL compiled to WebAssembly) in your browser with no signup, and also offers MariaDB, PostgreSQL and SQL Server on its servers. You can import a CSV into a table, and it dropped its old 4 MB query limit in April 2024.
DuckDB Web Shell
The DuckDB Web Shell at shell.duckdb.org runs DuckDB-WASM as a terminal-style prompt in your browser. It queries files over HTTPS, and the .files add command opens a picker for local files. It is free and needs no account.
Datasette Lite
Datasette Lite runs Datasette and SQLite in your browser with WebAssembly. You load a CSV or Parquet file from a URL with ?csv= or ?parquet=, and the host must allow cross-origin requests (CORS). It is free and open source.
MotherDuck
MotherDuck is a cloud DuckDB service, so your tables stay in your account between sessions. In its web UI, the Add data button uploads a CSV, JSON or Parquet file. It has a free Lite plan, and Business starts at $250 per organization per month plus usage.
rows.page
rows.page runs DuckDB SQL in your browser on a CSV, TSV, JSON, JSONL or Parquet file you drop on the page, and nothing is uploaded unless you press Share. Text files open up to 1.5 GB per tab, Parquet is not held to that limit, and nested JSON fields become dot-path columns like "user.address.city". You type one statement that starts with SELECT, WITH or FROM against a table called data, so CREATE TABLE and joins across two files are out. It is free with no signup, and results show up to 1,000,000 rows.
SELECT
"user.address.city" AS city,
count(*) AS orders,
median(price) AS median_price
FROM data
WHERE price > 20
GROUP BY ALL
HAVING count(*) >= 10
ORDER BY orders DESCWhich online SQL editors keep your data in the browser?
Where a query runs matters when your data is private. A server-based editor receives your SQL and any data inside it.
- In your browser: sqlime, SQLite Online (SQLite, DuckDB and PGlite), the DuckDB Web Shell, Datasette Lite, and rows.page until you press Share.
- On a server: DB Fiddle, SQL Fiddle, OneCompiler, the MariaDB, PostgreSQL and SQL Server engines in SQLite Online, and W3Schools SQL Tryit when WebSQL is not available.
- In the cloud with an account: MotherDuck, where uploaded files become stored tables.
How to pick a free online SQL editor
- Testing a query on a specific MySQL, PostgreSQL or SQLite version: DB Fiddle.
- SQL Server or Oracle syntax: SQL Fiddle or OneCompiler.
- Learning SQL from scratch with ready-made tables: W3Schools SQL Tryit.
- A SQLite database file: sqlime.
- A CSV, JSON or Parquet file on your disk: rows.page, the DuckDB Web Shell, or SQLite Online for CSV.
- A file at a public URL: Datasette Lite, the DuckDB Web Shell or rows.page.
- Tables you want to keep and query again later: MotherDuck.
rows.page limits and prices
| What | Limit or price |
|---|---|
| Open a file in your browser | Files up to 1.5 GB, $0, no account, nothing uploaded |
| Share a link without an account | $0, files up to 100 MB, link deleted 7 days after creation |
| Free account | $0, 10 datasets kept, last 3 versions |
| Pro | $12/month, 100 datasets, files up to 500 MB, private links |
| Max | $39/month, 1,000 datasets, files up to 2 GB, private links |
Questions
Can I run SQL on a 1 GB CSV file in my browser without uploading it?
Yes. rows.page uses DuckDB-WASM to read CSV, TSV, JSON and JSONL files up to 1.5 GB inside your browser tab, and Parquet files are not held to that limit. Nothing is uploaded unless you press Share.
Which free online SQL editor supports PostgreSQL 19 beta and MySQL 9?
DB Fiddle runs PostgreSQL 9.4 to 19 beta, MySQL 5.5 to 9, MariaDB and SQLite 3.30 to 3.46 on its server. For PostgreSQL inside your browser instead, SQLite Online includes PGlite alongside SQLite and DuckDB.
How do I remove duplicate rows with SQL in rows.page?
Every rows.page table has a hidden __rid column with the original row number, so a plain SELECT DISTINCT * keeps every row. Run SELECT DISTINCT * EXCLUDE (__rid) FROM data to compare only your own columns.
Can I share a SQL query and its result from rows.page?
Yes: press Share, or run curl -T data.csv https://rows.page in a terminal, to upload the file and get a link. One push takes up to 100 MB on any plan, and Pro ($12 per month) and Max ($39 per month) accept files up to 500 MB and 2 GB through multipart uploads. The SQL, filter and sort live in the page URL, so Copy link shares your exact result.
Why won't Datasette Lite load my CSV or Parquet URL?
Datasette Lite fetches the file from your browser, so the host must allow cross-origin requests (CORS). If it doesn't, open https://rows.page/ followed by the file URL instead, which falls back to a proxy for public files up to 100 MB.