0


0

テーブルのユーザーIDをSQL Serverの別のテーブルの意味のある値に結び付ける

次の表があります。* People *と呼びましょう。

id     | customer | shipper | buyer |
1      | 1        | 2       | 3     |
2      | 4        | 5       | 6     |
3      | 7        | 8       | 9     |

そして、これは* User_ID *テーブルと結びついています。

id     | Name  |
1      | Stan  |
2      | Brian |
3      | Amy   |

idを実際の値に置き換えるのではなく、People onlyなどのテーブルを返すためのベストプラクティスは何ですか? 私はこれをサブクエリで実行できることを理解しています…​ しかし、もっと良い方法があると思います。

1 回答


3


結合を使用する-http://www.codinghorror.com/blog/2007/10/a-visual-explanation-of-sql-joins.html [ここに視覚的に説明するリンクがあります]:

   SELECT c.name AS customer,
          s.name AS shipper,
          b.name AS buyer
     FROM PEOPLE p
LEFT JOIN USER c ON c.id = p.customer
LEFT JOIN USER s ON s.id = p.shipper
LEFT JOIN USER b ON b.id = p.buyer