0

私は結合と内部結合と戦っています。

次のような2つのテーブルがあります。

ユーザー

-----------------------------------------
ID | fname | lname | div_1_id | div_2_id
-----------------------------------------
1    paul    smith     1         2
2    john    lip       2        null
3    kim     long      1         4

師団

------------------
ID | name
------------------
1    estate
2    litigation
3    property
4    civil

DESIRED RESULT (SQL クエリ)

--------------------------------------------------
user.ID | fname | lname | div_1_name | div_2_name
--------------------------------------------------
  1        paul    smith     estate       litigation
  2        john    lip       litigation   
  3        kim     long      estate       civil

上記のような MS SQL クエリから新しいテーブルを作成したいと思います。

4

3 に答える 3

1

これに使用LEFT JOINします:

SELECT u.ID, u.fname, u.lname
      , d1.name as div_1_name
      , d2.name as div_2_name 
FROM USERS u 
LEFT JOIN DIVISIONS d1 ON u.div_1_id = d1.ID 
LEFT JOIN DIVISIONS d2 ON u.div_2_id = d2.ID

このSQLFiddleを参照してください

于 2013-04-19T10:43:41.280 に答える
0

使用するINNER JOIN

SELECT Users.ID, Users.fname, Users.lname, Divisions.name,Div.name
FROM Users INNER JOIN Divisions ON Users.div_id_1 = Divisions.ID
INNER JOIN Divisions Div ON Users.div_id_1 = Div.ID -- Second join with Divisions Table with Alias.
于 2013-04-19T10:42:37.490 に答える