在生产环境中,NATURAL(JOIN)是否被认为有害? [英] Is NATURAL (JOIN) considered harmful in production environment?

查看:137
本文介绍了在生产环境中,NATURAL(JOIN)是否被认为有害?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

I am reading about NATURAL shorthand form for SQL joins and I see some traps:

  • 它只需自动全部相同的命名列对(使用USING指定显式列列表)
  • 如果添加了一些新列,则连接输出也可能会意外"更改,在复杂结构中,连接输出可能不会那么明显(即使您知道NATURAL的工作原理)
  • it just takes automatically all same named column-pairs (use USING to specify explicit column list)
  • if some new column is added, then join output can be "unexpectedly" changed too, which may be not so obvious (even if you know how NATURAL works) in complicated structures

推荐答案

NATURAL JOIN语法是反模式的:

  • 查询的目的不太明显;
    • 应用程序使用的列不清楚
    • 使用的列可能会意外"更改
    • The purpose of the query is less obvious;
      • the columns used by the application is not clear
      • the columns used can change "unexpectedly"

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

      Because of this, I don't recommend the syntax in any environment.
      I also don't recommend mixing syntax (IE: using both NATURAL JOIN and explicit INNER/OUTER JOIN syntax) - keep a consistent codebase format.

      这篇关于在生产环境中,NATURAL(JOIN)是否被认为有害?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆