본문 바로가기
DataBase/MYSQL

[MYSQL] CHAR_LENGTH 함수 - 문자열 길이

by 오늘은강박사갈거야~~ 2021. 5. 31.
반응형

CHARACTER_LENGTH 함수

 

CHARACTER_LENGTH 함수는 문자열이 단순히 몇 개가 있는지 측정해서 반환하는 함수입니다. 같은 함수로는 CHAR_LENGTH가 존재합니다. 사용법은 동일합니다.

CHARACTER_LENGTH = CHAR_LENGTH 

함수의 사용법이 아래와 같이 간단하여, 바로 예제를 보시겠습니다.

 

CHARACTER_LENGTH('문자열')

 

[1] 사용 형태

 

1. 문자열의 글자 수 세기

 

select character_length('abcde');

-> 결과는


5

 

2. 해당하는 열의 글자 수 가져오기

 

NICKNAME NAME COUNTRY
sigong 강박사 대한민국
storm 점줄줄 브라질
yog 정정줄 아르헨티나

table1

SELECT CHAR_LENGTH(NAME)
FROM table1;

-> 결과는

3
3
3

SELECT NICKNAME
FROM table1
WHERE CHARCTER_LENGTH(COUNTRY) = 4 ;

-> 결과는

sigong

 

[2] 참고 사항

 

- 띄어쓰기도 하나의 문자열로 인식합니다.

SELECT CHAR_LENGTH('HI MY NAME');

-> 결과는


10

 

 

- CHAR라는 함수는 CHAR_LENGTH, CHARCTER_LENGTH와 비슷하게 생겼지만, 다른 기능을 하는 함수입니다. 

 

  CHAR 함수는 문자의 BYTE 수를 계산 해 주는 함수입니다. 아래 박스를 보시겠습니다. 

SELECT LENGTH('안녕');

->결과는


4일 수도 있고, 6일 수도 있고..입니다.

 

문자열의 BYTE는 어떤 것으로 인코딩했는가로 답이 달라지게 됩니다. 인코딩은 종류는 여러 가지가 존재합니다. EUR-KR, UTF-8 등등. 각각의 인코딩 방식에 따른 BYTE계산이 다르기 때문에, 그에 따라서 위의 결과 또한 달라지게 됩니다.

 

아래 표는 이를 간단히 정리한 것입니다. 

 

  한글(한글자 크기) 영어(한글자 크기)
EUR-KR 2BYTE 1BYTE
UTF-8 3BYTE 1BYTE

 

[3] 참고 자료

 

https://w3resource.com/mysql/string-functions/mysql-length-function.php

 

MySQL LENGTH() function - w3resource

MySQL LENGTH() returns the length of a given string.

www.w3resource.com

반응형

댓글