> 데이터 베이스 > MySQL 튜토리얼 > MySQL에서 여러 LIKE 패턴을 효율적으로 쿼리하려면 어떻게 해야 합니까?

MySQL에서 여러 LIKE 패턴을 효율적으로 쿼리하려면 어떻게 해야 합니까?

Susan Sarandon
풀어 주다: 2025-01-20 13:27:10
원래의
738명이 탐색했습니다.

How Can I Efficiently Query Multiple LIKE Patterns in MySQL?

여러 LIKE 패턴을 효율적으로 쿼리

데이터가 여러 LIKE 패턴 중 하나와 일치해야 하는 경우 다음과 같은 질문이 발생합니다. MySQL은 OR 조건 재사용에 대한 대안을 제공합니까?

OR 조건을 이용한 기존 방식

일반적으로 쿼리는 다음과 같습니다.

<code class="language-sql">SELECT *
FROM fiberbox f
WHERE
  f.fiberBox LIKE '%1740 %' OR f.fiberBox LIKE '%1938 %' OR f.fiberBox LIKE '%1940 %';</code>
로그인 후 복사

대안 탐색

목표는 가상의 LIKE IN()과 유사한 더 깨끗하고 효율적인 방법을 찾는 것입니다. 직접적인 LIKE IN() 구문은 없지만 다른 옵션이 있습니다.

효율적인 패턴 일치를 위해 정규 표현식을 사용하세요

여러 OR 조건을 바꾸는 한 가지 방법은 정규식(regexp)을 사용하는 것입니다.

<code class="language-sql">SELECT *
FROM fiberbox f
WHERE
  f.field REGEXP '1740|1938|1940';</code>
로그인 후 복사

이 쿼리의 정규 표현식은 '1740', '1938' 또는 '1940' 패턴을 포함하는 필드 열의 모든 값과 일치합니다. 이 접근 방식은 모든 패턴을 단일 문으로 결합하여 쿼리를 단순화하고 잠재적으로 성능을 향상시킵니다. 단 상황에 따라 달라질 수 있습니다.

위 내용은 MySQL에서 여러 LIKE 패턴을 효율적으로 쿼리하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿