> 백엔드 개발 > PHP 튜토리얼 > thinkphp 关联查询问题

thinkphp 关联查询问题

WBOY
풀어 주다: 2016-06-23 14:23:47
원래의
1022명이 탐색했습니다.

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);
로그인 후 복사

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿