본문 바로가기
MySql

MySQL Mysql NOT IN 절에 대한 내포 된 PHP 정수 배열

by 베이스 공부 2020. 10. 5.
반응형

NOT IN 절을 사용하는 MySQL 쿼리에 PHP 정수 배열을 사용하려고 시도했지만 오류가 없음에도 불구하고 항상 필터링하려는 결과를 반환하는 것 같습니다.

예:

$IDS = $_SESSION['Posts'];
$Select = 'SELECT * 
             FROM status 
            WHERE (W_ID = '.$ID.') 
              AND (ID NOT IN ("'.implode(',', $IDS).'")) 
         ORDER BY ID DESC 
            LIMIT '.$Begin.', '.$Number.'';

$Select = mysql_query($Select) OR DIE(mysql_error());

나는 이것이 논리적 구문 오류라고 확신합니다.

내가 테스트 한 내용 :

$ IDS가 배열로 취급되는지 확인했습니다. 또한 배열 내에 저장된 값이 있는지 테스트했습니다. 나는 또한 정수 배열을 인용하지 않았지만, 그것들이 없어서 mysql 구문 오류가 발생했습니다.

 

해결 방법

 

문제는 IN 블록의 시작과 끝에있는 두 개의 입니다. 이로 인해 전체 implode 배열이 쉼표로 구분 된 문자열이됩니다.

 

참조 페이지 https://stackoverflow.com/questions/6352722

 

 

반응형

댓글