跳到主要内容

测试你的 SQL 技能

测试你在筛选和 NULL 语义、联接、聚合和窗口函数及约束方面的 SQL 技能。30 道情景题,按类别即时评分,免费且无需注册。

30题12分钟
开始测试
基础

SQL 测试是什么?

这是一套基于情景的 SQL 测试:30 段真实查询片段,每段后跟一个问题,考察运行时实际会发生什么。一个对 NULL 比较的 WHERE 子句偷偷返回什么都不是。一个 LEFT JOIN,一旦你在错误的列上筛选就表现得像 INNER JOIN。一个 NOT IN,因为子查询中的一个值是 NULL 就无声地丢弃每一行。你要选出与数据库实际返回的内容相符的答案,而不是看起来应该发生什么的答案。

继续阅读

这 30 道题涵盖四个领域 — 筛选和 NULL 语义、联接和集合运算、聚合和子查询、窗口函数/CTE/事务/约束。这四个是读查询和运行查询会悄悄产生分歧的地方,也是职位招聘信息中「懂 SQL」进了面试后通常意味着具体东西的地方。你会得到四个领域各自的得分,所以薄弱环节显示为薄弱环节而不是被总分掩盖。

整个测试约需六分钟,无需注册,也无需编写或执行查询 — 每道题都是「读和预测」,就像资深工程师审核一个拉请求。知道语法和知道某个特定查询对特定数据的实际行为是两项不同的技能,这个测试衡量的是第二项。

你将获得

发现内容

看清四个 SQL 领域中哪一个实际上在拖你后腿
按类别分解得分 — 筛选/NULL、联接、聚合、窗口函数/事务
查出你处于哪个层级:初级、中级、高级还是专家级
看看自己的水平与招聘启事中「懂 SQL」真正的含义相比如何
  • 它在一次测试中涵盖从初级到专家级的全部范围。前面的题目是每个 SQL 用户都会碰到的内容 — NULL 比较、INNER vs LEFT JOIN、BETWEEN 的边界。后面的题目则涉及联接扇出和聚合、窗口函数、CTE、事务隔离和约束。你的得分会把你归入四个层级之一,而这些名称正是招聘启事中使用的术语。

  • 不需要。每道题都是基于 PostgreSQL、MySQL、SQL Server 和 SQLite 跨越的标准 SQL 行为 — NULL 语义、联接类型和 ANSI 窗口函数语法。这里没有任何内容依赖于厂商特定扩展。

  • 它采用大多数雇主筛选测试开场时使用的同样的「读和预测」推理方式,以同样的简短情景格式呈现,这也是它能作为备考工具的原因。它不是某个特定雇主测试的复制品,这里的高分也不是证书。它真正能告诉你的,是你会在哪四个领域中丢分,这正是在正式面试前最值得知道的事。

  • 大约六分钟。单题没有计时 — 测试衡量的是你是否知道查询实际会返回什么,而不是点击速度。你可以花任意长的时间思考一道题。

  • 不需要。你可以在没有账号的情况下参加测试、查看得分和分类细分。只有当你希望保留结果以便日后对比时,注册账号才有意义。

  • 你会得到四个领域各自的得分,由此看出失分主要集中在哪里,同时还会收到针对你所在层级的建议。测试不会公布逐题的答案,因为题目是轮换出题的,公开的答案会让所有用它备考的人的得分失去意义。

  • 精确阅读陌生查询对任何涉及 SQL 的职位都是防守得住的筛选维度,而且这是一套客观的对错测试而非性格测评,因此不存在性格测验常见的公平性问题。如果你想把它发给应聘者并统一收集结果,这需要通过 JobCannon 的招聘端功能,而不是通过这个页面。

立即进行SQL 技能评估测试

发现你的SQL 测试档案。共30道题目,耗时约12分钟。

开始测试
相关

相关测试