메뉴 건너뛰기

Dev tips

MySQL 프로시저에서 IN 조건 사용을 위해 동적 쿼리를 사용했었는데 배열 검색을 해주는 함수가 있어서 이걸 사용하면 된다.

인덱스를 타지 않으니 퍼포먼스는 당신의 몫.

 

store테이블의 status 값이 1,2,3 중에 하나이면 0보다 큰 값(값이 일치한 배열의 위치)을 리턴한다.

 

SELECT idx, name, status
FROM store
WHERE FIND_IN_SET(status, '1,2,3') > 0

 

[참고]

https://www.w3resource.com/mysql/string-functions/mysql-locate-function.php