SQL WHERE 절 질문입니다.
본문
제가 특정 SQL만 안받으려고
WHERE wr_3 !='가나다' and wr_3 !='010' and wr_3 !='업다운'
이부분을
조금 쉽게 wr_3 != '가나다','010''업다운' 이런식으로 바꿀수 있을까요?
답변 4
WHERE wr_3 NOT IN ('가나다','업다운') 일캐 하심 되겠네요.
WHERE wr_3 NOT REGEXP '^가나다$|^010$|^업다운^'
sql 문으로 not in('aaa','bbb','ccc') 같이 쓰시면 되지만,
굳이 조회자체를 안하려는 문자열을 not in 검색을 하여 DB를 일을 시키는거보다는
php 에서 먼저 해당 문자열이 있으면 sql 자체를 실행 안하시는게 좋지 않을까요?
if( $wr_3 != "aaa" && $wr_3 != "bbb" && $wr_3 != "ccc" ) {
//이때만 쿼리 실행
}
혹은
$arr = array('aaa','bbb','ccc'); // 거부할 문자열 배열 선언
if( in_array( $wr_3 , $arr ) ) {
// 이때만 쿼리 실행
}
이런결과만 보고 싶다는거 아닌가요?
가나다 , 010 , 업다운 글자가 하나라도 들어가면 안된다....는 의미로 이해가 되는데...
if (!( wr_3 =='가나다' || wr_3 =='010' || wr_3 =='업다운')) {
....
}
답변을 작성하시기 전에 로그인 해주세요.