Я использую Codeigniter, у меня запрос, который не работает. У меня есть 3 таблицы, которые называются tbl_lead, tbl_bankdata, tbl_payment_invoice
. Нет проблем с объединением двух таблиц. Я получаю проблему в таблице tbl_payment_invoice
.
. Проблема в том, что я добавляю статус платежа в таблицу tbl_payment_invoice
. Это может быть несколько статусов bank_id.
Мне нужно отобразить последний статус пользователя из tbl_payment_invoice
.
структура таблицы tbl_payment_invoice
p_i_id | payment_invoice|payment_invoice_date |bank_id |payment_invoice_by
1 | 1 | 2019-09-29 20:39:12 |33 |1
2 | 2 | 2019-09-29 20:39:43 |33 |1
3 | 1 | 2019-09-29 20:40:02 |05 |1
4 | 1 | 2019-09-29 20:45:12 |20 |1
5 | 2 | 2019-09-29 20:50:38 |05 |1
6 | 2 | 2019-09-29 21:10:12 |20 |1
7 | 1 | 2019-09-29 21:15:40 |10 |1
Моя ожидаемаяиз этой таблицы выводится
p_i_id | payment_invoice|payment_invoice_date |bank_id |payment_invoice_by
2 | 2 | 2019-09-29 20:39:43 |33 |1
5 | 2 | 2019-09-29 20:50:38 |05 |1
6 | 2 | 2019-09-29 21:10:12 |20 |1
7 | 1 | 2019-09-29 21:15:40 |10 |1
Мне нужно отобразить последние записи bank_id.
Не могли бы вы помочь мне с использованием соединения?
public function disbursed_Leadlist(){
if($this->session->userdata['login_session']['access_role']==5){
$or_where="tbl_bankdata.b_filestatus=1 AND createby='".$this->session->userdata['login_session']['id']."'";
}
else{
$or_where="tbl_bankdata.b_filestatus=1";
}
$result = $this->db->select('*')
->from('tbl_lead')
->join('tbl_bankdata','tbl_lead.c_id=tbl_bankdata.lead_id','LEFT')
->join('tbl_payment_invoice','tbl_bankdata.bank_id=tbl_payment_invoice.bank_id','LEFT')
->where($or_where)
->order_by('tbl_lead.date_of_created','DESC')
->get()
->result();
// echo $this->db->last_query();
return $result;
}