5

外部結合は、開発者による分析のみに使用されますか? 無関係な、または選択基準に「一致」しない 2 つ以上のテーブルにデータを含めたい理由のユース ケースを見つけるのに苦労しています。

4

8 に答える 8

19

ユースケースの例は、すべての顧客とその購入を示すレポートを作成することです。つまり、何も購入していない顧客も表示します。顧客と購入の通常の結合を行うと、レポートには少なくとも 1 回購入した顧客のみが表示されます。

于 2009-07-09T01:15:25.610 に答える
6

これは、 Jeff Atwoodによる非常に優れた例のリストです-SQL結合の視覚的説明彼は、SQL結合の新しい表現を視覚的に示しています。

于 2009-07-09T01:45:01.107 に答える
3

OUTER JOINは、プライマリテーブルからレコードのセットを選択する場合に対処することを目的としています。プライマリテーブルには、セカンダリテーブルに関連するレコードが含まれる場合と含まれない場合があります。

INNER結合は、セカンダリテーブルにも表示されていないプライマリレコードをリストから除外します。OUTER JOINは、修飾されたすべてのプライマリレコードの可視性を保証します。

于 2009-07-09T04:37:55.130 に答える
3

「一致しない」ケースは、オプションのデータに役立ちます。一部の行には存在するが、他の行には存在しないもの。

于 2009-07-09T01:10:36.953 に答える
2

外部結合と内部結合の主な違いは、結合述語が一致するかどうかに関係なく、外部結合では結合された両方のテーブルの各レコードが保持されることです。したがって、ユースケースは、「不足しているもの」について知ることを中心に展開する必要があります。購入していないお客様、または個人情報を紛失した会員。

于 2009-07-09T01:31:14.847 に答える
1

外部結合に関する優れた記事: 専門家に会う:外部結合での述語のコーディングに関するTerry Purcell:単純な外部結合構造の比較

于 2009-07-09T01:41:43.140 に答える
1

ユーザーが住所を入力しないことを選択したり、いくつかの住所 (配送先、住所、郵便番号など) を持っている可能性があるため、おそらくユーザー テーブルとそれに関連する住所テーブルがあります。すべてのユーザーを一覧表示するだけでなく、アドレスを持つユーザーのアドレスも表示する場合は、アドレス テーブルに外部結合を使用する必要があります。

于 2009-07-09T01:16:30.723 に答える
1

ユーザー用と資格など用の 2 つのテーブルがあるとします。すべてのユーザーが資格を持っている場合は、その資格を取得するクエリを実行したいとします。この場合、外部結合を使用して、すべてのユーザーと資格を持つユーザーを取得します。内部結合は、資格を持つユーザーのみを提供します。

于 2009-07-09T01:17:33.283 に答える