2015-11-04 3 views
0

любезно помочь мнеПрисоединяйтесь три таблицей

У меня есть три таблицы там названия является компания, администратор и ведет й получать все данные о потенциальных клиентах и ​​одну записи от компании = user_name и одну записи от администратора = display_name но здесь я путаюсь компании Коз и админа «ID» сохранить в тех же полях ..Please ли один помочь мне ..Thanks

Добавлено От Комментарий:

мой запрос

SELECT inno_admin.display_name,inno_company.Pseudo_name,inno_leads.* FROM inno_leads INNER JOIN inno_company ON inno_company.id = inno_leads.agent_id inno_admin ON inno_admin.id=inno_leads.agent_id ORDER BY ID DESC 
+0

включают структуру таблицы и дату образца с ожидаемым выходом – HaveNoDisplayName

+0

(мой запрос) SELECT, inno_admin.display_name, inno_company.Pseudo_name, inno_leads. * FROM inno_leads INNER JOIN inno_company ON inno_company.id = inno_leads.agent_id inno_admin ON inno_admin.id = inno_leads.agent_id ORDER BY ID DESC –

+0

Взгляните на http://stackoverflow.com/questions/21479079/how-to-join-three-tables-in-codeigniter –

ответ

0

Попробуйте этот код.

Просто добавьте 2 условия.

$name = "any name"; 
$this->db->select("");// select required fields. 
$this->db->join("company","join criteria"); 
$this->db->join("admin","join criteria"); 
$this->db->where("company.company_name",$name); 
$this->db->where("admin.display_name",$name); 
$this->db->group_by("leads.agent_id");// <------ new line added. 
$this->db->get("leads"); 
+0

Спасибо Raju .. я пытаюсь –

+0

@MurtazaSaeedkhan, конечно ... дайте мне знать статус. –

+0

Дорогой до сих пор стек в этом запросе не работает –

0

Не уверен, что это ваш следующий вопрос как вопрос сбивает с толку. Код ниже позволит вам получить все данные.

http://www.codeigniter.com/user_guide/database/query_builder.html#selecting-data

public function get_data_results() { 
    $this->db->select('*'); 
    $this->db->from('inno_leads', 'LEFT'); 
    $this->db->join('inno_company', 'inno_company.id = inno_leads.agent_id', 'LEFT'); 
    $this->db->join('inno_admin', 'inno_admin.id = inno_leads.agent_id', 'LEFT'); 
    // order_by id up to you but there 
    $this->db->order_by('inno_leads.agent_id', 'DESC'); 
    $query = $this->db->get(); 

    if ($query->num_rows() > 0) { 
     //return $query->result(); 
     //Or 
     //return $query->result_array(); 
    } else { 
     return FALSE; 
    } 

} 

Pass $ имя от контроллера до модели.

public function get_data($name) { 
    $this->db->select('*'); 
    $this->db->from('inno_leads', 'LEFT'); 
    $this->db->join('inno_company', 'inno_company.id = inno_leads.agent_id', 'LEFT'); 
    $this->db->join('inno_admin', 'inno_admin.id = inno_leads.agent_id', 'LEFT'); 
    $this->db->where("inno_company.company_name", $name); 
    $this->db->where("inno_admin.display_name", $name); 
    $query = $this->db->get(); 

    if ($query->num_rows() > 0) { 
     return $query->row_array(); 
    } else { 
     return FALSE; 
    } 

} 

Контроллер образца Функция

public function index() { 
    $this->load->model('some_model'); 

    // Note this could be a uri segment also or session data. 
    // $name = $this->uri->segment(2); 

    $name = 'Your Company Name'; 

    $company_info = $this->some_model->get_data($name); 

    if ($company_info) { 

     $data['display_name'] = $company_info['display_name']; 

     $this->load->view('home', $data); 
    } 
} 
+0

Спасибо wolfgang1983 и Niranjan N Raju.its working Теперь чувствую себя рад ..Вам пожелания –

+0

Тогда вы должны принять ответы или опросить их – user4419336

Смежные вопросы