제목 | active record join 에서 정수형을 조건으로 넣으면 escape 처리가 되는 현상 | ||
---|---|---|---|
글쓴이 | 터푸 | 작성시각 | 2014/04/28 11:56:59 |
|
|||
$this->db_slave->join('some_table as st','some_table > 0 and st.idx=st1.idx','left'); 이런식의 쿼리를 작성하게 되면 실제 쿼리는 LEFT JOIN `some_table` AS st ON `st`.`idx` > `0` AND `st`.`idx`=`st1`.`idx` 이렇게 정수까지 escape 처리가 되어 쿼리 에러가 나옵니다. (맞는 표현 : LEFT JOIN `some_table` AS st ON `st`.`idx` > 0 AND `st`.`idx`=`st1`.`idx`) 제가 해결한 방법은 조인문의 0 비교를 where('st.idx > 0',null,false) 조건절에 넣어서 임시로 이용하는데 이렇게 하다 보면 쿼리문 자체가 최적화 되기 힘든 부분도 있고 해서 실 서비스에 사용하기 꺼려 지는 부분이 있습니다. 위 부분에 대한 해결책 또는 다른 방법을 아시는 분 계실까요? |
|||
다음글 | uri 파싱 (6) | ||
이전글 | 파일 업로드는 잘되는데 파일 삭제가 안되요... (1) | ||
한대승(불의회상)
/
2014/04/28 12:42:02 /
추천
0
on 절에 escape 처리를 하지 않도록 하는 방법이 없으니 지금 처럼 where 절에 기술하는 방법외에는 없어 보입니다.
|
터푸
/
2014/04/28 12:57:09 /
추천
0
네 그렇군요 감사합니다.
|