0%

这里是凭回忆记录的赵东坡老师的「五步精听法」。这个方法是我很多年前在上 TOEFL iBT 培训时,从赵东坡老师处习得。

本文先讲怎么训练,然后解释为什么要这样训练。

阅读全文 »

最近在读各种 Hive SQL,发现一个可读性问题,让我很无奈。这里记录一下,希望看到的读者能够写出可读性更好的代码。

因为业务比较复杂,所以大家经常会用到各种子查询(sub-query)。于是会写成类似这样:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
SELECT
t1.foo,
t2.bar,
t3.baz
FROM (
SELECT
foo,
bar
FROM
tb1
WHERE
<conds>
) AS t1 INNER JOIN (
SELECT
baz
FROM
tb2
WHERE
<conds>
) AS t2 ON <conds>
WHERE
<conds>;

这样写子查询会有两个问题。一是子查询的结果如果要在多个不同地方用到,那么就要复制粘贴多次,实际执行的时候也可能执行多次。二是当子查询或/和 JOIN 特别多的时候,整个查询就会变得无比复杂,可读性极差。为解决问题,可用视图(VIEW)解决,也可用 WITH ... AS ... 子句来解决。

阅读全文 »

在很早的上一篇文章中,我们讲了英语当中的时态选择。时态选择涉及到的主要是谓语动词的形态变化。此篇继续讲动词,不过话题转向非谓语动词。

阅读全文 »