728x90

LENGTH 는 문자열의 '바이트 길이'를 가져오는 함수이다.
한글은 한 글자를 표현하기 위해서 3 byte 를 사용하기 때문에, LENGTH 함수로 읽으면 한 글자당 3 을 출력한다.
따라서 LENGTH 로 '안녕' 을 읽으면 6 이 출력된다.
반대로 영어는 한 글자가 1 byte 이라서 알파벳 개수만큼 출력된다.
SELECT LENGTH('안녕'); -- 6
SELECT LENGTH('abcd'); -- 4
CHAR_LENGTH 는 문자열의 길이를 가져오는 함수이다.
문자의 byte 수를 계산하기 않고 단순히 몇 개의 문자가 있는지를 가져오는 함수이다.
따라서 문자열의 길이를 알기 위해서는 CHAR_LENGTH 를 사용하는 것이 좋다.
SELECT CHAR_LENGTH('안녕'); -- 2
SELECT CHAR_LENGTH('abcd'); -- 4
'데이터 베이스' 카테고리의 다른 글
| [MySQL] 특정 문자열 검색하기 (feat. LIKE 함수) (0) | 2022.09.26 |
|---|---|
| [MySQL] 컬럼 생성시 unsigned을 사용하는 의미 (0) | 2022.04.05 |
| [MySQL] SQL 쿼리는 꼭 대문자로 작성해야 하는가? (0) | 2022.03.28 |
| [MySQL] GROUP BY와 SELECT의 관계 (0) | 2022.03.28 |
| [MySQL] NULL 값 기준으로 ORDER BY 정렬하기 (0) | 2022.03.28 |