难度系数: 简单
编写一个 SQL 查询,查找 Person 表中所有重复的电子邮箱。
返回的结果表中的数据可以按任意顺序排列。

阅读全文 »

难度系数: 中等
编写一个 SQL 查询,查找所有至少连续出现三次的数字。
返回的结果表中的数据可以按任意顺序排列。

阅读全文 »

难度系数: 中等
编写 SQL 查询对分数进行排序。排名按以下规则计算:

  • 分数应按从高到低排列。
  • 如果两个分数相等,那么两个分数的排名应该相同。
  • 在排名相同的分数后,排名数应该是下一个连续的整数。换句话说,排名之间不应该有空缺的数字。
    按 score 降序返回结果表。
阅读全文 »

难度系数: 中等
编写一个 SQL 查询,获取并返回 Employee 表中第二高的薪水 。如果不存在第二高的薪水,查询应该返回 null 。

阅读全文 »

今天在本地修复了个小问题,然后提交到Gerrit。刚好老板看到了,提了点意见,给的分数为-2。对过意见后,做了点修改然后再一次提交到Gerrit,这时老板开会去了。找了另一个同事来review,但是发现即使给了+2分,也没有出现Verify按钮。鼓捣了老半天,才发现,原来,如果出现了-2,需要重新提交新的patch set,或者由给出-2分的成员批准才能Verify并入库。

Sometimes a developer will push back on a code review. Either they will disagree with your suggestion or they will complain that you are being too strict in general.
有时开发人员可能会对某次代码审查结果产生抵触。他要么就是不同意你的建议,要么就是抱怨你太严格了。

阅读全文 »

The primary purpose of code review is to make sure that the overall code health of Google’s code base is improving over time. All of the tools and processes of code review are designed to this end.
代码审查(code review)主要是为了确保Google代码库的整体代码质量能随着时间的推移而不断得到改善。代码审查的所有工具和步骤都是为了这个目的而设计的。

In order to accomplish this, a series of trade-offs have to be balanced.
为了达到这个目的,我们必须做一系列的权衡折中。

阅读全文 »

How to write code review comments

如何写代码审查评论

Summary

总结

  • Be kind.

  • Explain your reasoning.

  • Balance giving explicit directions with just pointing out problems and letting the developer decide.

  • Encourage developers to simplify code or add code comments instead of just explaining the complexity to you.

  • 语气要和善;

  • 解释这么评论的原因;

  • 在明确指示与指出问题之间做好平衡,并让开发人员自己决定;

  • 鼓励开发人员简化代码或者增加注释,而不只是让他们向你就代码的复杂性进行说明。

阅读全文 »

难度系数: 简单
编写一个SQL查询来报告 Person 表中每个人的姓、名、城市和州。如果 personId 的地址不在 Address 表中,则报告为空  null 。
任意顺序返回结果表。

阅读全文 »
0%