2017-10-20 9 views
0

ずにジョイン:は、以下の表の場合、外部キー

x, y, lat, lng 

とテーブル

lat, lng, Country, State, City 

今、私は緯度とLNGを含むすべての値を持つ最初のテーブルを持っている必要があります。一方、2番目のテーブルのデータは存在する必要はありませんが、これは単なる拡張です。

第1テーブルと第2テーブルの間に親子関係の並べ替えがあることがわかります。したがって、私は外部キーとしてlatを使用することを検討しています。一方、latとlngを除くすべては存在する必要はありません。

外部キーを使用する必要がありますか?たぶんそれらなしで動作しますが、残りのデータ(国、州、市)でフィルタリングできるようにするにはまだ参加していますか?

+0

2番目のテーブルのlat、lngには、現在1番目のテーブルに表示されている値のみが含まれている必要がある場合は、外部キーが必要です。それ以外の場合は、1番目と2番目のテーブルの間で左結合で作業できます。 –

+0

あなたはlatとlngの両方に参加して一意にすることができます –

答えて

1

データがこれらのテーブルにどのように取り込まれるかによって、第二のテーブル内のデータが独立して入ってくることになる場合

はい、第二のテーブル内のレコードは常に最初の後に作成される場合(つまり、第二の表のデータは、後に来るいくつかの情報です)

いいえ、 (例えば、最初のテーブルがユーザによって満たされ、2番目のテーブルがgisデータのインポートによって満たされている場合)...この場合、longテーブルとlatテーブルの両方のインデックスを作成するだけで、クエリのパフォーマンスヒットを軽減できます。

関連する問題