| 제목 | [수정]액티브 레코드에서 서브쿼리 사용하기. | ||
|---|---|---|---|
| 글쓴이 | 徽人 | 작성시각 | 2010/05/17 19:08:24 |
|
|
|||
$this->db->where('group_id', 'admin');
$this->db->select('id');
$this->db->from('users');
// 쿼리 컴파일
$subQuery = $this->db->_compile_select();
// 액티브 레코드 초기화.
$this->db->_reset_select();
$this->db->select('*');
$this->db->where("user_id IN ($subQuery)", NULL, FALSE);
$this->db->from('boards');
echo $subQuery = $this->db->_compile_select();
//SELECT * FROM (`boards`) WHERE user_id IN (SELECT `id` FROM (`users`) WHERE `group_id` = 'admin')
private 으로 지정해놓은 메서드를 사용해야 하기 때문에 쫌 찝찝하지만 서브쿼리 사용할 일 있으면 유용하게 사용할 수 있을 것 같습니다. 추가. 직접 쿼릴 날려본게 아니라서 잘못된 부분이 있네요. 수정했습니다.
$this->db->where('user_id', "($subQuery)", FALSE); => $this->db->where("user_id IN ($subQuery)", NULL, FALSE);
|
|||
| 다음글 | LAMP 웹사이트를 위한 10가지 간단한 보안 작업 (4) | ||
| 이전글 | codeigniter Asset helper (4) | ||
|
최용운
/
2010/05/18 08:49:22 /
추천
0
헉.. 한자님 감사합니다.
|