| 제목 | or_like 질문입니다. | ||
|---|---|---|---|
| 글쓴이 | 템포 | 작성시각 | 2013/01/11 18:13:45 | 
| 
                         | 
                |||
| 
                        쿼리 문제상 like 쓰고 or like를 써서 조인을 하는데요 or을 걸어버리니 where .... 컬럼 LIKE '%test%' escape '!' OR 컬럼2 LIKE '%te%' escape '!' 이렇게 하면 데이터가 안나오구 where .... 컬럼 LIKE '%test%' escape '!' OR 컬럼2 LIKE '%%' escape '!' 이렇게 하면 다른 WHERE 조건 절 무시하고 모든 데이터가 나옵니다. 쿼리할때보면 OR쓸때 () 괄호 해서 우선연산자 쓰는것도 있던걸로 기억하는데 CI에서 사용가능한가요? DB는 오라클 DB 사용중입니다.  | 
                |||
| 다음글 | 코드이그나이터 메모리 사용량에 관한 질문 (6) | ||
| 이전글 | 배열들을 다른 파일에서 사용하기. (4) | ||
| 
                             
                                변종원(웅파)
                                /
                                2013/01/11 18:21:45 /
                                추천
                                0
                             
                             | 
                    
| 
                             
                                템포
                                /
                                2013/01/11 18:26:36 /
                                추천
                                0
                             
                            
                                웅파님 답변 감사합니다 
                        like절이 or조건절인데 like절을 따로 sql문 쓰는게 아니라 where 조건절을 따로 쓰는건가요 ?  | 
                    
| 
                             
                                한대승(불의회상)
                                /
                                2013/01/11 18:57:29 /
                                추천
                                0
                             
                            
                                템포// $this->db->where() 를 사용하라는 뜻입니다. 
                        
$this->db->where("컬럼 LIKE '%test%' escape '!' OR 컬럼2 LIKE '%te%' escape '!' ", NULL, FALSE);로 사용하시면 됩니다. | 
                    
| 
                             
                                니삼
                                /
                                2013/01/11 19:46:40 /
                                추천
                                0
                             
                            
                                 직접 sql문을 쓰시니까 sql injection같은 공격에도 충분히 대비하시길~
                             
                         | 
                    
| 
                             
                                템포
                                /
                                2013/01/14 08:59:51 /
                                추천
                                0
                             
                            
                                답변 감사들합니다~ 
                        아 그런뜻이었군요.. 저는 $q = $this->db->last_query 해서 where절을 "sql문..."으로 작성했었네요 ;; 불의회상님 덕분에 코드를 줄이게 됐네요 감사합니다ㅎ  | 
                    
where 부분만 sql문으로 작성해서 쓰시면 됩니다.