2013-10-22 9 views
6
$q = $this->db->select(' 
      books.title, 
      reserved_books.id, 
      reserved_books.isbn, 
      reserved_books.price, 
      reserved_books.item_sold, 
      reserved_books.date_sold, 
      reserved_books.total_amount 
      ') 
     ->from('reserved_books') 
     ->join('books','reserved_books.isbn= books.isbn') 
     ->limit($limit,$offset); 

ここで私の質問にはどのように区別できますか? reserved_books.isbnはユニークなものです。私の質問にDISTINCTを使用するにはここをクリックCODEIGNITER

$this->db->distinct(); 

が別個には常に動作しません。

答えて

23

を "DISTINCT" というキーワードを追加します。あなたは追加する必要があります - ここで

$this->db->group_by('column_name'); 
+0

私のコードであなたのコメントを適用できますか? –

+0

あなたは私のコードで正しく動作しません。私は$ this-> db-> distinct();を使いました。私の選択の上にあるが動作していない –

+1

次にGroup By関数を試してみてください.... $ this-> db-> group_by( 'column_name'); –

1

以下は試してみてください選択

$this->db->distinct(); 

前に、クエリにRefrence

+0

に参加する必要はありません。私はこれを試してみましたが、私はjerremyのMY_Modelでそれを使用重複レコード –

+0

を示しています。それは私のために働いた。 – Fawzan

1

>group_by("name_of_the_column_which_needs_to_be unique");は、重複したエントリを削除するための最良の方法があるここでは、この

$select = array(
      'books.title', 
      'reserved_books.id', 
      'DISTINCT reserved_books.isbn', 
      'reserved_books.price', 
      'reserved_books.item_sold', 
      'reserved_books.date_sold', 
      'reserved_books.total_amount' 
); 
$q = $this->db 
     ->select($select) 
     ->from('reserved_books') 
     ->join('books','reserved_books.isbn= books.isbn') 
     ->group_by('reserved_books.isbn') 
     ->limit($limit,$offset); 
+0

isbnはタイトルが他のテーブルからのユニークなものです –

0

を行う方法です。

$query = $this->db->select("inf.id, inf.sku, inf.fab_id, inf.sku, inf.amount, inf.min_length, inf.num_of_pieces, inf.width ,inf.type") 
          ->join("retailcat","retailcat.sku=SUBSTRING(inf.sku,1,19) AND retailcat.category=218","INNER") 
          ->distinct() 
          ->get("input_factor inf"); 
1

あなたは、任意の

$query=$this->db->distinct()->select('table_attribute')->where('condition')->get('table_name'); 
    return $query->result(); 
関連する問題