2014-03-13 86 views
0

enter image description hereMysql的加入四個表另一個表中選擇列後爲選擇鍵

用我上面所示的數據庫。 我有以下要求。 假設我必須從四個表中獲取所有數據small_text_data,big_text_data,file_data其中meta_data_id與group_meta_data.I中group_id = 1的meta_data_id匹配,意味着返回此結果的函數的輸入僅爲group_id。因此,我應該如何編寫選擇特定組的所有meta_data_id的連接查詢,然後從所有四個數據表中選擇數據。 我已經嘗試了一些連接查詢。但它不工作。如果我可以在Codeigniter活動記錄中獲得解決方案會更好。

回答

1

試試這個,沒有測試

function get_data($id){ 
    $query = $this->db 
    ->select('g.*, s.*, b.*, f.* ') 
    ->join('small_text_data s', 's.meta_data_id=g.group_id', 'left') 
    ->join('big_text_data b', 'b.meta_data_id=g.group_id', 'left') 
    ->join('file_data f', 'f.meta_data_id=g.group_id', 'left') 
    ->where('g.group_id', $id) 
    ->get('group_meta_data g'); 

if($query->num_rows()) { 
    return $query->result(); 
} 
} 
+0

我還需要獲取數據的特定GROUP_ID .. –

+0

不工作................... ............. –

+0

什麼是錯誤? – aseferov

相關問題