ajax поиск нескольких таблиц объединения в PHP - PullRequest
0 голосов
/ 22 сентября 2018

Я использую ajax для поиска.Существуют зависимые объединения нескольких таблиц.Я не получаю правильный результат. Я хочу уникальный результат для поиска. Ниже приведен мой код:

$this->db->distinct('table2.sname,table3.cname');
$this->db>select('table1.stname,table2.*,table3.*,table4.*,table5.*');
$this->db->from('table5');
$this->db->join('table1','table1.stid=table2.stid');
$this->db->join('table2','table2.sid=table3.sid');
$this->db->join('table3','table3.cid=table4.cid');
$this->db->join('table4','table4.tid=table5.tid');
$this->db->or_like("table1.stname",$keyword);
$this->db->or_like("table2.sname",$keyword);
$this->db->or_like("table3.cname",$keyword);
$this->db->or_like("table4.tname",$keyword);
$this->db->or_like("table5.stoname",$keyword);
$query = $this->db->get();

1 Ответ

0 голосов
/ 22 сентября 2018

Если вам нужна первая строка выбора формы, то вы можете использовать limit (1)

<?php 

    $this->db->distinct('table2.sname,table3.cname');
     $this->db>select('table1.stname,table2.*,table3.*,table4.*,table5.*');
     $this->db->from('table5');
     $this->db->join('table1','table1.stid=table2.stid');
     $this->db->join('table2','table2.sid=table3.sid');
     $this->db->join('table3','table3.cid=table4.cid');
     $this->db->join('table4','table4.tid=table5.tid');
     $this->db->or_like("table1.stname",$keyword);
     $this->db->or_like("table2.sname",$keyword);
     $this->db->or_like("table3.cname",$keyword);
     $this->db->or_like("table4.tname",$keyword);
     $this->db->or_like("table5.stoname",$keyword);

    $this->db->limit(1);

     $query = $this->db->get();

?>

или если вам нужен весь результат запроса, вернуть результат ()

<?php 

    $this->db->distinct('table2.sname,table3.cname');
     $this->db>select('table1.stname,table2.*,table3.*,table4.*,table5.*');
     $this->db->from('table5');
     $this->db->join('table1','table1.stid=table2.stid');
     $this->db->join('table2','table2.sid=table3.sid');
     $this->db->join('table3','table3.cid=table4.cid');
     $this->db->join('table4','table4.tid=table5.tid');
     $this->db->or_like("table1.stname",$keyword);
     $this->db->or_like("table2.sname",$keyword);
     $this->db->or_like("table3.cname",$keyword);
     $this->db->or_like("table4.tname",$keyword);
     $this->db->or_like("table5.stoname",$keyword);


     $query = $this->db->get();

     return $query->result();

?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...