как использовать DISTINCT здесь в моем запросе CODEIGNITER

$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 является уникальным.

Попробуйте ниже:

 $this->db->distinct(); 

но Distinct не всегда будет работать. Вы должны добавить – >group_by("name_of_the_column_which_needs_to_be unique");

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

Добавляет ключевое слово «DISTINCT» в запрос перед выбором

 $this->db->distinct(); 

Refrence

Вот как это сделать

 $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); 

Вам не нужно присоединяться

  $query=$this->db->distinct()->select('table_attribute')->where('condition')->get('table_name'); return $query->result(); 

Вот лучший способ удалить дубликат записи.

 $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");