我将所有修饰符ALL的定义读为
ALL是可选关键字。当您将所有内容都包括在内时, 所有值,包括重复值。 DISTINCT不支持 窗口功能
我的理解是,它将自动计算所有值。
如果是这样,那为什么还要创建一个ALL关键字?
答案 0 :(得分:2)
ALL
在实践中几乎从未使用过。关键是要平衡语法,因此默认值具有显式关键字。
类似地,某些数据库与UNION DISTINCT
相比,支持UNION
(相当于UNION ALL
),以明确表示UNION
上还有一个附加功能-删除重复项。
答案 1 :(得分:1)
“如果是这种情况,那为什么还要创建一个ALL关键字?”
有一条很棒的Python规则,称为: EIBTI
出于同样的原因,您具有类似以下的构造:
CREATE TABLE tab(
col INT NULL -- there is no need specify NULL because column is nullable by design
);
ALTER TABLE t ADD CONSTRAINT("t_FK") FOREIGN KEY ("c_ID")
REFERENCES "t2" ("c_ID") ENABLE; -- constraint is enabled by default
每个“默认”行为都不需要关键字,但是如果我们可以明确声明某些内容,为什么不这样做。