집 >데이터 베이스 >MySQL 튜토리얼 >MySQL의 find_in_set을 사용하여 여러 문자열 검색을 어떻게 수행할 수 있습니까?
질문:
MySQL의 find_in_set 함수는 쉼표로 구분된 값(CSV) 컬렉션에서 단일 문자열을 검색할 수 있습니다. 하지만 동시에 여러 문자열을 검색하는 기능을 어떻게 활용합니까?
정답:
MySQL에는 다중 문자열 검색을 지원하는 기본 기능이 없지만 다음 기술을 사용할 수 있습니다.
<code class="language-sql">WHERE CONCAT(",", `setcolumn`, ",") REGEXP ",(val1|val2|val3),"</code>
이 방법은 대상 CSV 컬렉션을 선행 및 후행 쉼표를 포함한 쉼표로 연결합니다. 그런 다음 결과 문자열이 파이프 기호(|)로 구분된 원하는 검색 문자열 패턴과 일치하는지 확인합니다. 예:
<code class="language-sql">WHERE CONCAT(",", `tags`, ",") REGEXP ",(red|green|blue),"</code>
이 쿼리는 tags
열에 "red", "green" 또는 "blue" 값이 포함된 행을 반환합니다.
위 내용은 MySQL의 find_in_set을 사용하여 여러 문자열 검색을 어떻게 수행할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!