学 SQL 最大的门槛不是语法,而是"还没开始就先装数据库"。其实入门完全不需要:浏览器里就能跑一个真正的 SQLite——建表、插入、查询、JOIN 全部实时出结果。SQLite 的基础语法与 MySQL/PostgreSQL 高度一致,学会即可迁移。本文给一条"十分钟上手路径"和一套练习题。
为什么入门选 SQLite?
- 零安装:数据库引擎直接内嵌,打开网页就是一个可用数据库;
- 标准 SQL:SELECT / WHERE / JOIN / GROUP BY 与主流数据库语法一致;
- 会话内持久:同一会话内多次运行之间,建好的表和数据保留,可以分步练习;
- 结果可视化:查询结果直接渲染成表格,直观。
十分钟上手路径
第 1 分钟:建表
CREATE TABLE students(
id INTEGER PRIMARY KEY,
name TEXT,
class TEXT,
score REAL
);
第 2~3 分钟:插入数据
INSERT INTO students VALUES
(1,'张三','一班',89),
(2,'李四','二班',72),
(3,'王五','一班',95),
(4,'赵六','二班',63);
第 4~6 分钟:条件查询与排序
SELECT name, score FROM students
WHERE score >= 80
ORDER BY score DESC;
第 7~10 分钟:分组统计
SELECT class, COUNT(*) AS 人数, AVG(score) AS 平均分
FROM students
GROUP BY class;
跑完这四段,你就已经用过了 SQL 最核心的 60% 语法:建表、插入、条件、排序、分组聚合。
进阶练习题
- 再加一张 scores 表(学生id、科目、分数),用 JOIN 查每个学生的总分;
- 查询平均分最高的班级(子查询或 ORDER BY + LIMIT);
- 给 score 加一列"等级"(CASE WHEN 表达式:≥90 优秀 / ≥80 良好 / 其他 及格)。
如实说明:在线练习的边界
- 数据库活在浏览器内存里:会话内跨多次运行保留,但刷新页面或长时间放置后重置——练习脚本记得复制保存;
- 数据量受浏览器内存限制,适合学习规模的表(几千行以内);
- 它不替代生产数据库:没有用户权限、备份、并发等概念,这些进阶到 MySQL/PostgreSQL 再学。