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.

.csv.json.parquet
Drop a file here
Stays in your browserUp to 1.5 GB

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.

10 free online SQL editors compared
EditorEnginesRunsLoad your own filePrice
DB FiddleMySQL 5.5 to 9, MariaDB, PostgreSQL 9.4 to 19 beta, SQLite 3.30 to 3.46ServerNoFree; private fiddles need PRO
SQL FiddleSQL Server, SQLite, PostgreSQL, MySQL, MariaDB, OracleServerNot documentedFree; AI features need a login
OneCompiler16 databases, including MySQL, PostgreSQL, SQL Server and DuckDBServerNot documentedFree
W3Schools SQL TryitWebSQL where available, else a serverBrowser or serverNo (fixed sample tables)Free
sqlimeSQLiteBrowserSQLite database file or URLFree (MIT)
SQLite OnlineSQLite, DuckDB, PGlite; MariaDB, PostgreSQL, SQL Server on a serverBrowser or serverCSV importFree, no signup
DuckDB Web ShellDuckDB-WASMBrowserFiles over HTTPS, or local files with .files addFree
Datasette LiteSQLiteBrowserCSV or Parquet from a URL (CORS needed)Free
MotherDuckDuckDBCloudCSV, JSON or Parquet uploadFree Lite; Business $250/org/month + usage
rows.pageDuckDB-WASMBrowserCSV, 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.

sql
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 DESC

Which 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

WhatLimit or price
Open a file in your browserFiles 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.