2013-12-22 74 views
0

IM連接多個表尋找一個低於藥結構的SQL語句。我想選擇的表,其中有一個關係表下降所有的UID和文字:對我的SQL查詢通過毫米

  • partsofspeech
  • verbs_tempus
  • words_case
  • words_language
  • words_relation

每個表都有字段uidtext。每個表都有一個毫米表來保存任何關係。該當地值屬於相關表本身的UID。外國代表下降UID

我想用一個SQL語句做到這一點。我認爲這應該是可能的加入,但即時新與這些。這裏是一個「律圖文:enter image description here

這裏是我的查詢:

SELECT partsofspeech.uid, partsofspeech.text from declined 
LEFT JOIN partsofspeech_mm 
ON partsofspeech_mm.foreign = declined.uid 
LEFT JOIN partsofspeech 
ON partsofspeech_mm.local = partsofspeech.uid 

小提琴:

sql fiddle

是否ANY1有一個線索可能處理這個遞歸?

+3

既然你是新的,並沒有發表您和查詢的版本期待幫助編寫了一個給你,至少[編輯](http://stackoverflow.com/posts/20724943/edit)你的問題,並提供**相關的樣本數據和期望的輸出**以文本形式或更好的形式創建[sqlfiddle](http://sqlfiddle.com)。否則你的問題很可能會被關閉。 – peterm

+0

不知道你想達到什麼。但也許這可能會訣竅。 http://sqlfiddle.com/#!2/0af271/22 –

+0

BTW不可能在MYSQL之外進行數據操作嗎?也許用PHP? –

回答

0

這裏的第一個表partsofspeech爲你做

SELECT T1.uid,T1.text,T2.local,T2.foreign,T3.uid,T3.text 
    FROM partsofspeech T1 
    INNER JOIN partsofspeech_nm T2 ON (T1.uid = T2.local) 
    INNER JOIN declined T3 ON (T2.foreign = T3.uid) 

可以爲其他表一起做的休息和UNION他們。

+0

Ty爲你的答案。 我弄糊塗了與崗位制度在這裏,創造了一個新的職位意外。 (希望我刪除它正確):/ [sql小提琴] [1] [1]:http://sqlfiddle.com/#!2/0af271/2 即時通訊使用左連接來做它atm。 有沒有辦法以遞歸的方式獲得以下部分? – SineMatha

+0

* INNER JOIN *的問題。我不是很熟悉不同類型: 它是否提供給我空的結果? – SineMatha

+0

感謝提供'UNION'的提示。我以前不知道。 – SineMatha