[MSSQL] 다중 LIKE 또는 LIKE 여러개 사용법(LIKE IN, REGEXP)

우기 MS SQL

 

안녕하세요!! 우기입니다. 😁

요즘은 쿼리 사용이나 데이터베이스 활용을 통해 분석하는 일이 줄었지만! 이번에 정리한 부분을 공유드리려고 합니다.

 

바로 LIKE 구문인데 다중 LIKE구문, 여러 개의 LIKE절을 활용하는 방법입니다.

MS SQL은 IN을 같이 활용한 다중 LIKE 절은 없습니다.

다른 방법이 있으니 같이 알아볼까요~?

 

 

LIKE 조건 추가 OR 활용 방안

SELECT *
FROM SITEM
WHERE CO_CD = 'TEST'
	AND ITEM_NM LIKE 'BOLT%'
    OR ITEM_CD LIKE 'NUT%'
    OR TIEM_CD LIKE 'ETC%'

 

위처럼 LIKE절을 광범위하게 사용할 필요가 없는 경우, 두세가지 정도 경우가 필요하다면 OR절로도 활용할 수 있습니다.

   ※하지만 실제 데이터베이스를 고려하면 LIKE 조건이 더 많아질 수도 있고 OR만을 사용하는 코드는 비효율적으로 판단됩니다.

 

ORACLE, MYSQL 등에서는 LIKE IN 또는 REGEXP_LIKE 등 함수를 활용할 수 있는데 MS-SQL에서는 활용하지 못하는 걸로 보입니다.

 

이를 해소하기 위해서는 INDEX 등 함수를 사용해야하는데 다중 LIKE 처리는 없습니다. (제가 확인한 바로는..)

또한, 정규식 일부 기능에 해당하는 문자 범위 패턴에 대해서만 검색이 가능합니다. 🤦‍♂️

 

따라서!

REGEXP_LIKE와 같은 정규식으로 활용할 수 있는함수는 없다고 보시면 될 것 같습니다.

 

LIKE 구문 관련해서는 이전에 포스팅한 하단 글 참조 해주시면 감사하겠습니다. :) 

 

2021.02.24 - [DB/MS SQL] - [MSSQL] LIKE구문 설명 및 예제

 

[MSSQL] LIKE구문 설명 및 예제

앞선 포스팅에서 SELECT문에 대해서 포스팅할 때, 간단하게 LIKE구문에 대해 알아봤었는데요. 이번에는 LIKE절에 대해 조금 더 자세한 설명을 드리고자 합니다. LIKE구문? 쿼리의 조건문에 해당하는 W

woogie-db.tistory.com

 

 

댓글

Designed by JB FACTORY