티스토리 뷰

 

📌 SQL LOWER 함수

문자열 입력을 받아 모두 소문자로 반환합니다. 

구문은 간단합니다.

LOWER(string)

 

 

  • SELECT, WHERE, ORDER BY를 포함한 다양한 SQL 문에서 LOWER 함수를 사용할 수 있습니다. 

 

 

📌 사용 방법

'Username' 열이 포함된 'Users'라는 테이블이 있다고 가정해 보세요.

모든 사용자 이름을 소문자로 표시하려면 다음을 사용합니다.

SELECT LOWER(Username) AS LowercaseUsername
FROM Users;
 

 

1. 대소문자를 구분하지 않는 비교: 대소문자 차이에 대해 걱정하지 않고 문자열을 비교하려는 경우

SELECT *FROM Users
WHERE LOWER(Username) = LOWER('JOHNDOE');
 

 

 

2. 데이터 표준화: 열의 모든 항목이 동일한 형식으로 저장되는지 확인

INSERT INTO Users (Username)
VALUES (LOWER('JohnDoe'));
 

 

 

 

📌 GOOD 사용법

  • 데이터 정규화:

특히 이메일 주소나 사용자 이름과 같은 필드의 경우 일관된 형식을 유지하려면 데이터를

저장 때 'LOWER'를 사용하세요.

 

  • 비교 쿼리:

대소문자를 구분하지 않고 검색하려면 'WHERE' 절에 'LOWER'를 구현하여 대소문자에 관계없이

모든 관련 레코드를 캡처하세요.

 

  • 정렬:

데이터를 정렬할 때 소문자로 변환하면 대소문자가 다를 경우 일관된 순서를 유지하는 데 도움이 될 수 있습니다.

SELECT *FROM Users
ORDER BY LOWER(Username);
 
 

 

 

 

📌 BAD 사용법

  • 성능 문제:

대규모 데이터 세트에서 LOWER를 사용하면 특히 WHERE 절에서 인덱스 사용을 방해할 수 있으므로

성능 저하가 발생할 수 있습니다. 데이터베이스가 지원하는 경우 대소문자를 구분하지 않는 데이터 정렬

사용을 고려하세요.

 

  • 불필요한 변환:

필요하지 않은 경우 'LOWER'를 적용하지 마세요. 데이터가 이미 소문자인 경우 다시 변환할 필요가 없습니다.

 

  • JOIN 조건의 남용:

JOIN 조건에서 'LOWER'를 사용하면 비효율성이 발생할 수 있습니다. 삽입하기 전에 데이터를 

표준화하는 것이 더 나은 방법입니다.

 

 

 

 

 

 

반응형