2015-05-20 31 views
1

假設:加入由PostgreSQL中映射多個值和條件

tbl_a:

id hobby type 
1 fishing man 
2 movie woman 

tbl_b:

id hobby type 
1 game boy 
2 dance girl 

我想man=boy, woman=girl做連接操作

select a.type,a.hobby, b.hobby 
from tbl_a a 
join tbl_b b 
on a.type=b.type 

將會產生

type hobby hobby 
man fishing game 
woman movie dance 

它會發生嗎?

回答

1

是的,你可以這樣做:

SELECT a.type, a.hobby, b.hobby 
FROM tbl_a a 
JOIN tbl_b b ON (a.type = 'man' AND b.type = 'boy') OR 
       (a.type = 'woman' AND b.type = 'girl'); 

JOIN條件僅僅是一個boolean表達,你可以指定你想加入的,包括在這兩個關係(不同的價值觀「人」什麼條件,「男孩')和單獨的添加劑條件(兩性)。公頃。

+0

公頃。好可愛!我知道這樣,只是忘了它。謝謝。 –