2016-02-05 59 views
2

我想加入2個表,但在另一個表中沒有記錄。Codeigniter SQL查詢其他表中沒有記錄

例如
表名:shop_items

  • shop_item_id
  • shop_item_sk
  • shop_item_name

表名:item_reviews

  • item_review_id
  • item_review_sk
  • item_review_desc
  • item_review_rate
  • shop_item_sk
  • item_review_by

的問題是,當它沒有任何記錄其項目詳細信息不會出現item_reviews表

這是我的SQL語句

$query = $this->db->select('*') 
    ->from('shop_items') 
    ->join('item_reviews', 'shop_items.shop_item_sk=item_reviews.shop_item_sk','inner') 
    ->where('shop_items.shop_item_sk',$id) 
    ->limit(1) 
    ->get(); 
    return $query->result(); 

我研究了關於聯盟,但我不知道如何在笨使用它。 高級謝謝你能幫助我的人。

回答

3

使用左外連接。這裏的shop_items表是左表加入item_reviews與它。

+0

謝謝Sharmistha達斯。 –

+0

如果我需要AVG(item_review_rate)和count(item_review_id),我該如何放置它? –

+0

別擔心我已經完成了..非常感謝 –

0

也許用左連接?

$query = $this->db->select('*') 
->from('shop_items') 
->join('item_reviews', 'shop_items.shop_item_sk=item_reviews.shop_item_sk','left') 
->where('shop_items.shop_item_sk',$id) 
->limit(1) 
->get(); 
return $query->result(); 
+0

其不工作.. –

相關問題