0
我有3個表:SQL連接不是一對一的
# t1
id | name | description
1 | n1 | d1
2 | n2 | d2
3 | n3 | d3
# t2
id | idt1 | project | url
1 | 1 | p1 | u11
2 | 1 | p2 | u12
3 | 2 | p2 | u22
4 | 3 | p1 | u31
我想有一個顯示是這樣的兩件事情的SQL查詢:
a)備選方案1:顯示在t1中的所有元素對於P2
t1.name t2.project t2.url
n1 p2 url12
n2 p2 url22
n3 p2 null
b A項目)選項2:顯示所有的項目在t1中的所有元件和選擇列名是該項目,如果數據不存在顯示空
t1.name t2.project.p1 t2.project.p2
n1 url11 null
n2 url21 url22
n3 url31 null
目前我只使用下面的查詢管理,以創建選項1的部分):
select t1.name, t2.project, t2.url from t1
right join t2 on (t1.id = t2.idt1)
任何幫助嗎?
大多數人覺得'左連接'夠詭異了,找到'右連接'是不可能理解的。如果你想編寫易於維護的代碼,如果可能的話,堅持左連接。 – jarlh
好的...但是左邊加入怎麼樣?我不知道該怎麼做:( – jlanza
't1右連接t2'與't2 left join t1'具有相同的結果。 – jarlh