2016-01-25 6 views
0

FeedbackКак присоединиться к двум таблицам?

User

Этот запрос works.Fetching Данные в таблице обратной связи:

public function feedback_data() 
    { 
     $recipe_id = 0; 
     $this->db->where('recipe_id',$recipe_id); 
     $query = $this->db->get('feedback'); 
     return $query->result_array(); 
    } 

Мне нужно получить feedback_id и комментарий из таблицы обратной связи и Firstname и LastName из таблицы пользователя, где user_id от обратной связи равен user_id от пользователя. Кстати, вот мой вопрос, и я думаю, что он не работает.

$this->db->select('f.feedback_id, f.comment, f.recipe_id, f.user_id as Fid'.'u.firstname, u.lastname, u.user_id as Uid'); 
    $this->db->from('feedback f') 
    $this->db->join('user u','u.user_id = f.user_id'); 
    $this->db->where('f.recipe_id', $recipe_id); 
    $query = $this->db->get()->result(); 
    return $query; 
+0

Почему вы думаете, что это не работает? Также у этого есть опечатки, например '$ recpe_id', поэтому, пожалуйста, вырежьте и вставьте свой фактический запрос. Пожалуйста, введите эти ссылки в строке. Какой SQL вы используете? Пожалуйста, прочитайте о MVCE в ссылках на ссылки. PS Вы хотите 'u.user_id = f.user_id'. – philipxy

+0

Я использую mysql .. я должен удалить все псевдонимы? – Sandy

+0

Почему, по вашему мнению, это не работает? Каков правильный запрос? – philipxy

ответ

0

Пожалуйста, попробуйте следующее:

$this->db->select('f.feedback_id, f.comment, f.recipe_id, f.user_id as Fid'.'u.firstname, u.lastname, u.user_id as Uid'); 
$this->db->from('feedback f') 
$this->db->join('user u','u.user_id = f.user_id', 'left'); 
$this->db->where('f.recipe_id', $recipe_id); 
$query = $this->db->get()->result(); 
return $query; 

Попробуйте это, если приведенный выше код не работает:

$this->db->select('f.feedback_id, f.comment, f.recipe_id, f.user_id as Fid'.'u.firstname, u.lastname, u.user_id as Uid'); 
    $this->db->from('feedback f'); 
    $this->db->join('user u','u.user_id = f.user_id', 'left'); 
    $this->db->where('f.recipe_id', $recipe_id); 

    $query = $this->db->get(); 
    if ($query->num_rows() > 0) 
    { 
     return $query->row_array(); 
    } 
Смежные вопросы