2017-04-19 42 views
0

我有很少的表(a,b,c和d)。我試圖加入所有的表格來獲取整個數據。當我嘗試選擇全部並加入所有表格時。我的「id」和「foreign_key」返回null。查詢的對象在SELECT和JOIN後返回null

MySQL查詢

SELECT * FROM TABLEA 
LEFT JOIN TABLEB ON TABLEB.menu_id = TABLEA.id 
LEFT JOIN TABLEC ON TABLEC.menu_id = TABLEA.id 
LEFT JOIN TABLED ON TABLED.id = TABLEA.user_id 

結果

{ 
    id: null, 
    user_id: null, 
    others: other_data 
    ... 
} 

預期結果

{ 
    id: XXX, 
    user_id: YYY, 
    others: other_data 
    ... 
} 

回答

0

這是happing因爲你AR不要提及要返回的列。我認爲這將解決您的問題,因爲 -

SELECT TABLEA.col1, TABLEB.col2 FROM TABLEA 
LEFT JOIN TABLEB ON TABLEB.menu_id = TABLEA.id 
LEFT JOIN TABLEC ON TABLEC.menu_id = TABLEA.id 
LEFT JOIN TABLED ON TABLED.id = TABLEA.user_id