sql – NATURAL(JOIN)在生产环境中被认为是有害的吗?

我正在阅读关于SQL连接的NATURAL简写形式,我看到一些陷阱:

>它只是自动获取所有相同的命名列对(使用USING指定显式列列表)
>如果添加了一些新列,那么连接输出也可能“意外地”改变,这可能不是那么明显(即使你知道NATURAL如何工作)在复杂的结构中

NATURAL JOIN语法是反模式:

>查询的目的不太明显;

>应用程序使用的列不清楚
>使用的列可能会“意外”更改

>语法违背模块化规则,尽可能使用严​​格类型.明确几乎普遍更好.

因此,我不建议在任何环境中使用该语法.
我也不建议混合语法(IE:使用NATURAL JOIN和显式INNER / OUTER JOIN语法) – 保持一致的代码库格式.

https://stackoverflow.com/questions/6039719/is-natural-join-considered-harmful-in-production-environment

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:sql – NATURAL(JOIN)在生产环境中被认为是有害的吗?