1
  1. 内部結合の場合、等しい値の条件は、あるテーブルの主キーと別のテーブルの外部キーが等しいことです。
  2. 複合主キーと複合外部キーを持つ2つのテーブルを内部結合する場合、主キーと外部キーの値の各コンポーネントが等しいことによって、2つのテーブルを常に結合する必要があります。
4

3 に答える 3

2
  1. いいえ、常にそうであるとは限りません。しかし、それは私たちが通常行うことであり、規範的なパターンです。(SQLINNER JOIN操作では、述語が等値比較である必要はありません。また、PRIMARY KEY および/または FOREIGN KEY 列で比較を行う必要はありません。)

  2. 繰り返しますが、これは規範的なパターンですが、要件ではありませんINNER JOIN。意図が主キー/外部キーの関係で結合を実行することである場合、はい、述語はキーのすべてのコンポーネント列での等価比較になります。

于 2016-03-01T23:25:47.587 に答える
0
  1. 任意のフィールドで2つのテーブルを内部結合できますが...ベーステーブルと依存テーブルの標準内部結合について説明しています。そして、インデックス付きのフィールドで結合するのはパフォーマンスの問題です
  2. 答えは最初の質問と同じです。必要に応じて内部参加できます。スキーマと、2 つのテーブルを結合する際に必要なものによって異なります。
于 2016-03-01T23:29:29.707 に答える
0

どちらの質問にも答えはノーです。

演算のON節にはJOIN、1 または 0 に評価される式、または評価されない式を含めることができます。

たとえば、これを書くことができます。

  FROM t1
  JOIN t2 ON INSTR(t1.name, t2.surname) > 0 AND t2.nationality = 'US'

またはさらに恐ろしい種類のもの。

外部キーは、制約を適用するのに役立ちます。また、好都合な状況では、関連付けられたインデックスによってクエリが高速化されます。しかし、JOIN 句は、キーとインデックスの使用にまったく制限されていません。

于 2016-03-01T23:30:25.527 に答える