2013-12-18 91 views
0

我們有兩個2表:我們是否需要爲此SQL語句加入JOIN?

tbl_projekte [uid,werbemittel,projekt_name,kunden_id] 

tbl_kunden [uid, kunden_name] 

我們使用這些語句從tbl_projekte選擇的記錄:

SELECT * FROM tbl_projekte WHERE werbemittel ='12' ORDER BY kunden_id ASC 

我們如何獲得SQL語句ORDER BY kunden_name?

感謝您提前提供任何幫助!

+3

在'tbl_kunden'表中看到'kunden_name'而不是'tbl_projekte'表,是的,你需要'JOIN'。 –

+0

在這裏發佈德國專欄名稱,讓來自世界各地的用戶感到非常困惑。你也應該避免在你的應用程序中。 – hek2mgl

回答

1

是的,你需要爲這個

SELECT p.* 
FROM tbl_projekte p 
INNER JOIN tbl_kunden k on k.uid = p.kunden_id 
WHERE p.werbemittel ='12' 
ORDER BY k.kunden_name ASC 
0

聯接如果要通過客戶名稱訂購,然後再去做這樣:

SELECT p.uid, p.werbemittel, p.projekt_name 
FROM tbl_projekte p 
LEFT JOIN tbl_kunden k ON k.uid = p.kunden_id 
WHERE werbemittel ='12' 
ORDER BY k.kunden_name ASC 
0

的「」是一個隱含的自然連接:

SELECT * 
FROM tbl_projekte, tbl_kunden 
WHERE werbemittel ='12' 
ORDER BY kunden_name ASC 

如果你想明確:

SELECT * 
FROM tbl_projekte NATURAL JOIN tbl_kunden 
WHERE werbemittel ='12' 
ORDER BY kunden_name ASC 

「自然聯接」合併具有相同值的主鍵(在您的情況下爲uid)的表。