在线代码运行BanShow Run

🗄️ 在线运行 SQL

浏览器里跑真正的 SQLite 数据库。自带中文示例数据,写完查询点运行,结果直接以表格显示。

运行环境SQLite 3 · sql.js 需要下载约 700 KB 🔒代码只在本机浏览器运行,不上传服务器

Ctrl / ⌘ + Enter 运行

结果

还没有输出。写好代码点「运行」,结果会显示在这里。

就绪

真正的 SQLite 数据库编译成 WebAssembly 在浏览器里运行,SQL 语法与 MySQL/PostgreSQL 高度通用。

三步开始

  1. 展开「建表与数据」可以看到当前的两张示例表,也可以自己改成任意结构。
  2. 在代码框里写 SQL,多条语句用分号隔开,会依次执行。
  3. 点「运行」,每条 SELECT 的结果都以表格显示,并给出行数和耗时。

示例代码

点任意一条即可载入到编辑器,改两行再运行,是熟悉语法最快的方式。

SQL 教程

常见问题

这是真的数据库吗?

是真的 SQLite——和手机 App、浏览器里用的那个 SQLite 是同一份 C 代码,只是编译成了 WebAssembly。所以 SQL 行为、类型规则、函数都和真实 SQLite 一致。

数据和 MySQL 一样吗?

语法大部分通用(SELECT、JOIN、GROUP BY、子查询、窗口函数都支持)。差异在细节:SQLite 是动态类型,自增用 INTEGER PRIMARY KEY AUTOINCREMENT,日期函数是 date()/strftime() 而不是 MySQL 的 DATE_FORMAT()。练语法完全够用。

建的数据会保留吗?

会保留在当前页面会话里。你可以先运行 INSERT,再运行 SELECT 看到刚插入的数据。刷新页面或点「重置数据库」会回到初始的示例数据。

能自己建表吗?

能。展开「建表与数据」面板,把示例结构改成你自己的 CREATE TABLE 和 INSERT,点「重置数据库」应用新结构。

中文表名列名可以吗?

可以。SQLite 支持 Unicode 标识符,示例数据就是中文的。也可以按习惯用英文,或用双引号 / 反引号包起来。

查询报错了怎么办?

输出区会显示 SQLite 的原始错误信息,例如 no such column: 年纪(列名拼错)。SQL 报错通常就三类:名字写错、少写逗号或分号、GROUP BY 与聚合函数不匹配。

换一门语言