Heim > Backend-Entwicklung > PHP-Tutorial > thinkphp 关联查询问题

thinkphp 关联查询问题

WBOY
Freigeben: 2016-06-23 14:23:47
Original
1018 Leute haben es durchsucht

thinkphp 关联查询

有两个表,一个是医院r_hospital,另一个是科室r_department。怎样关联查询,选择完医院之后,科室只显示该医院的科室,而不显示其他医院的了

回复讨论(解决方案)

请贴出你的代码

请贴出你的代码
class RoomAction extends Action{
   public function room(){    
        $room = M('department');
    $h_id = I('get.h_id');
    $h_name = I('get.h_name');
       print_r($h_id);
       print_r($h_name);    
 $data =$_POST['text'];
        print_r($data);
   if($data !=''){
//执行sql语句(执行like查询,搜索)
 $map['name'] = array('like',"%$data%");   
     $list = $room->where($map)->select();  
$this->list = $list; 
       $this->display();
}else{
  $map['hospital_id'] = $h_id;
  $list = $room->where($map)->select();
    $this->assign("list", $list);
    $this->display();   
}
  }

THINKPHP 中关联查询(多表查询)可以使用 table() 方法或和join方法,请看示例:1、table()$list = $user->table('user_status stats, user_profile profile')->where('stats.id = profile.typeid')->field('stats.id as id, stats.display as display, profile.title as title,profile.content as content')->order('stats.id desc' )->select();2、join()$user = new Model('user');$list = $user->join('RIGHT JOIN user_profile ON user_stats.id = user_profile.typeid' );3、原生查询$Model = new Model();$sql = 'select a.id,a.title,b.content  from think_test1 as a, think_test2 as b where a.id=b.id '.$map.' order by a.id  '.$sort.' limit '.$p->firstRow.','.$p->listRows;$voList = $Model->query($sql);
Nach dem Login kopieren

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage