SQL LIKE 절

김석재·2023년 4월 11일
0

SQL / DB

목록 보기
3/6

LIKE 절

LIKE 절은 문자열을 비교할 때 사용되며, 특정 패턴을 가진 문자열을 찾기 위해 사용된다. 보통 WHERE 절과 함께 사용되며, 특정 조건에 맞는 문자열을 선택하고자 할 때 많이 사용된다.

LIKE 절은 비교 연산자의 일종으로, 다음과 같은 형식을 갖는다.

SELECT column_name(s)
FROM table_name
WHERE column_name LIKE pattern;

여기서 pattern은 검색할 문자열을 나타내며, 다음과 같은 문자열을 사용할 수 있다.

  • % : 0개 이상의 문자를 나타냄.
  • _ : 한 개의 문자를 나타냄.
  • [] : 괄호 안에 들어있는 문자 중 하나를 나타냄.
  • [^] : 괄호 안에 들어있지 않는 문자 중 하나를 나타냄.

예를 들어, 이름이 'John'인 모든 사람을 찾으려면 다음과 같이 사용할 수 있다.

SELECT *
FROM users
WHERE name LIKE 'John';

이 경우 이름이 정확히 'John'인 경우만 선택된다.
이름이 'John'으로 시작하는 모든 사람을 찾을 때는 다음과 같이 사용할 수 있다.

SELECT *
FROM users
WHERE name LIKE 'John%';

이 경우 'John'으로 시작하는 모든 사람이 선택된다. % 기호는 'John' 다음에 0개 이상의 문자가 나올 수 있다는 것을 나타낸다.

이름이 'Jo_n'인 모든 사람을 찾을 땐 다음과 같이 사용할 수 있다,

SELECT *
FROM users
WHERE name LIKE 'Jo_n';

이 경우, 이름이 'John' 또는 'Joan'과 같이 _에 어떤 문자가 들어가든 나머지 문자가 일치하는 경우를 나타낸다.

LIKE 절은 문자열을 비교하고 찾을 수 있지만, 검색 속도가 느리거나 비효율적일 수 도 있다. 대량의 데이터를 처리할 떄는 FULLTEXT 검색 같은 INDEXING 처리를 통한 방법을 고려하는 것이 좋다.

FULLTEXT

MySQL, POSTGRE 등의 데이터베이스에서 제공하는 문자열 검색 방법중 하나로 전문 검색(FULL-TEXT-SEARCH) 도는 텍스트 검색(TEXT SEARCH) 라고도 부른다.
FULLTEXT 검색은 특정 텍스트 필드에서 키워드 검색을 효율적으로 수행할 수 있도록 지원한다.

FULLTEXT의 특징

  • 빠른 검색 속도 : 데이터베이스가 텍스트 검색을 빠르게 처리할 수 있도록 인덱싱 기술을 사용한다.
  • 유사한 단어 검색 : 검색어와 비슷한 단어를 찾아서 검색 결과에 포함시킬 수 있다.
  • 부분 일치 검색 : 검색어의 일부분만 입력해도 부분 일치하는 결과를 찾을 수 있다.

0개의 댓글