[sql] LIKE 연산자의 대소문자 구분

SQL에서 LIKE 연산자는 특정 패턴을 가진 문자열을 검색하는 데 사용됩니다. 하지만 이 연산자는 기본적으로 대소문자를 구분하지 않습니다.

대소문자 구분이 없는 경우

예를 들어, LIKE 'apple'는 ‘apple’, ‘Apple’, ‘aPpLe’ 등과 같이 대소문자가 다른 모든 문자열을 반환합니다.

SELECT * FROM products
WHERE product_name LIKE 'apple';

대소문자 구분이 있는 경우

그러나, 몇몇 데이터베이스 시스템은 기본적으로 대소문자를 구분하기 때문에 이러한 동작을 기대할 수 없습니다.

대소문자 구분을 설정하려면?

대소문자를 구분하고자 한다면, 각 데이터베이스 시스템의 문서를 참고하여 해당 설정을 변경해야 합니다.

이상적인 방법은 데이터를 입력할 때 대소문자를 통일시키는 것이며, 그렇지 않은 경우에는 LOWER() 또는 UPPER() 함수를 이용하여 검색할 문자열을 변환하여 사용할 수 있습니다.

이상적으로는 데이터베이스 시스템에 대소문자 설정을 유동적으로 변경할 수 있는 옵션을 제공하는 것이 좋습니다.

여기까지, SQL의 LIKE 연산자와 대소문자 구분에 대해 알아보았습니다.