0
내 결과에서 다양한 수의 사용자/ID를 제외하고 싶습니다. IN 연산자에 다양한 수의 사용자 이름/ID를 전달할 수 있습니까? 다음과 같이 단순화 된 코드 : - 폐쇄를 위해서배열을 MySQL 루틴 IN 연산자로 전달
CREATE DEFINER=`root`@`localhost` PROCEDURE `myroutine`(@userids)
--possible process here--
BEGIN
SELECT * FROM mytable WHERE `myid` NOT IN (@useridsprocessed)
END
예, PHP로 (당신이 그것을 태그)는 @useridsprocessed VAR에게 –
예를 채울 수 있습니다. 단일 문자열로 ID를 전달하는 단순한'myroutine ('1,2,3')'이라 할지라도 동적으로 선택을 준비/실행해야한다. 왜냐하면'not in (@userids)'는 일하지 마라. 그것은 'not in ('1,2,3 ')'와 동일 할 것입니다. –
['FIND_IN_SET'] (https://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_find-in-set)을 찾으십니까? 경고 : IN 연산자를 요청했습니다. 이것은 bool로 캐스팅하면 IN 내에서 사용할 수있는 문자열 함수입니다. – hakre