Here i have 2 tables. First one is customer and second on is membership
Now i just want to get a single last record with a particular customer_id from these jioned table(customer and membership).
Here is my customer table structure
Here is my membership table structure and desired latest inserted rows
Here i've tried a code myself
$results="";
$this->db->select('customer.*,membership.*');
$this->db->from('customer');
$this->db->join('membership', 'customer.id = membership.customer_id', 'left');
/* $this->db->order_by('membership.id','DESC');
$this->db->limit('1');*/
$query = $this->db->get();
$data = $query->result_array();
$todayDate = date("d-m-Y");
foreach ($data as $value) {
$this->db->select('customer.*,membership.*');
$this->db->from('customer');
$this->db->join('membership', 'customer.id = membership.customer_id', 'left');
$this->db->where('membership.customer_id', $value['customer_id']);
$this->db->order_by('membership.customer_id','DESC');
$this->db->limit('1');
$query = $this->db->get();
$dataa = $query->result();
foreach ($dataa as $values) {
$date1 = new DateTime($todayDate);
$date2 = new DateTime($values->end_date);
$diff=date_diff($date1,$date2);
$days = $diff->format("%a");
$pos = $diff->format("%R");
if($pos == "+" && $days >= 0){
$item[] = $values;
}
}
But it return all rows from both joined table. but i want only latest(last) rows with each customer id..!
Please tell me where i am going wrong. Thanks

