집 >데이터 베이스 >MySQL 튜토리얼 >SQL의 LIKE 연산자와 함께 여러 조건을 효율적으로 사용하려면 어떻게 해야 합니까?
SQL의 LIKE 연산자는 지정된 패턴이 포함된 문자열을 검색하는 데 사용됩니다. 일반적으로 일치 패턴에 %와 같은 와일드카드 문자를 추가합니다. 그러나 LIKE를 사용하여 여러 조건을 도입하려는 경우 기존 OR 방법이 최선의 선택이 아닐 수 있습니다.
LIKE 연산자에 여러 조건을 도입하는 더 좋은 방법은 임시 테이블을 만드는 것입니다. 예시는 다음과 같습니다.
<code class="language-sql">CREATE TEMPORARY TABLE patterns ( pattern VARCHAR(20) ); INSERT INTO patterns VALUES ('ABC%'), ('XYZ%'), ('PQR%'); SELECT t.* FROM tbl t JOIN patterns p ON (t.col LIKE p.pattern);</code>
이 예에서는 일치하는 여러 패턴을 저장하기 위해 패턴이라는 임시 테이블을 만듭니다. 그런 다음 필요한 스키마를 이 테이블에 삽입합니다. 마지막으로 tbl 테이블과 패턴 테이블 사이에 JOIN 연산을 수행하여 패턴 열을 기준으로 일치하는 행을 찾습니다.
위 예에서는 패턴이 고유하고 tbl 테이블의 각 행이 하나의 패턴에만 일치한다고 가정합니다. 그러나 일치 가능성이 여러 개인 경우 DISTINCT 쿼리 수정자를 사용하여 고유한 결과를 보장할 수 있습니다.
<code class="language-sql">SELECT DISTINCT t.* FROM tbl t JOIN patterns p ON (t.col LIKE p.pattern);</code>
이 수정을 통해 tbl 테이블의 각 행이 여러 패턴과 일치하더라도 결과에 한 번만 표시되도록 보장합니다.
위 내용은 SQL의 LIKE 연산자와 함께 여러 조건을 효율적으로 사용하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!