JOIN部件的名称是什么

时间:2016-11-01 18:19:53

标签: sql language-lawyer

如果我有一个表达式,表达式的某些部分通常都有名称,以便我们可以讨论它们,例如:在

A - B
  • A被称为 subtrahend
  • B被称为 minuend
  • 结果称为差异

那么我如何正确地谈论SQL中的JOIN?例如

A JOIN B ON A.id = B.a

在此联接中,组件的名称是什么?

  • A :?
  • B:?
  • A JOIN B
  • A.id = B.a加入条件
  • A JOIN B ON A.id = B.a:?

1 个答案:

答案 0 :(得分:1)

查看BNF grammar for the SQL-99 standard,我的解释就是:

  • A <table reference>
  • B <table reference>
  • A JOIN B:这将是 <qualified join> ,但缺少 <join specification>
  • A.id = B.a <search condition> 这是 <boolean value expression>
  • A JOIN B ON A.id = B.a <qualified join>

<join condition> 指定为 ON <search condition>

以下是BNF grammar for SQL-2003的相关部分(虽然我认为应该几乎完全相同,但它有点近似。)