Home > Backend Development > PHP Tutorial > thinkphp 关联查询问题

thinkphp 关联查询问题

WBOY
Release: 2016-06-23 14:23:47
Original
1024 people have browsed it

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);
Copy after login

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template