Contoh ID: id_company dan id_company_payer
Disini sya akan menjelaskan jara mempergunakan LEFT JOIN 2 id dengan mempergunakan 1 acuan table, yaitu mas_company karena data indentitas company di ambil dari 1 tabel yang sama maka harus digunakan fungsi LEFT JOIN untuk menggabungkan 2 id tersebut, dan jangan lupa perhatikan inisial pada setiap table dan id tersebut.
QUERY PADA SQL:
SELECT `id_order_info`, `order_no`, `id_inspection_type`, `id_media`, `date_order`, `contact_person`, `position_person`, `no_person`,
`naco`.`name_company` as naco, `id_reference_no`, `date_reference_no`, `sgs_order`, `oc_signer`, `position`,
`copa`.`name_company` as copa, `advanced_payment`, `buyer`
FROM (`mas_order`)
LEFT JOIN `mas_company` as naco ON `mas_order`.`id_company` = `naco`.`id_company`
LEFT JOIN `mas_company` as copa ON `mas_order`.`id_company_payer` = `copa`.`id_company`
WHERE `id_order_info` = '22'
Pada query diatas menunjukan bahwa mas_company di beri inisial naco dan copa agar pada saat memanggil tidak bentrok atau sql ambiguous column name.
QUERY MODEL CODEIGNITER
function get_by_id($id)
{
$this->db->where($this->id, $id);
$this->datatables->
select('id_order_info,order_no,id_inspection_type,id_media,date_order,contact_person,position_person,no_person, naco.name_company as naco,id_reference_no, date_reference_no, sgs_order,oc_signer,position, copa.name_company as copa,advanced_payment,buyer');
$this->datatables->join('mas_company as naco', 'mas_order.id_company = naco.id_company','left');
$this->datatables->join('mas_company as copa', 'mas_order.id_company_payer = copa.id_company','left');
return $this->db->get($this->table)->row();
}
*Untuk melakukan JOIN Table harus di perhatikan fungsi inisialnya.
No comments:
Post a Comment