본문 바로가기

데이터베이스(DB)

[MYSQL] Length() vs char_length(), 길이를 나타내는 함수

728x90

 

데이터의 길이를 알아내려면 어떻게 해야할까?

Length() 함수를 사용하면 데이터의 길이를 가져올 수 있다. 

하지만 인코딩 설정에 따라 한글길이가 제대로 출력되지 않는 상황이 발생하기도 하는데 

이때는 char_length() 함수를 이용하면 해결이 가능하다.

 

 

영어로 된 데이터에 length함수를 적용했을때

 

 

결과

-> 영어로 된 데이터에 length() 함수를 적용했을때는 정확한 길이가 나오는것을 알 수 있다. 

 

 

 

 


 

 

한글로 된 데이터에 length()함수를 적용해보기

 

-> 한글에 length()함수를 적용했을때는 잘못된 길이가 출력된다. 

-> 이유는 한글은 현재 인코딩설정상 한글자에 3byte로 계산을 하기때문이라고 한다.

 

 

 

 


 

한글로 된 데이터에 char_length() 함수 적용해보기

 

-> 한글로 된 데이터에 char_length() 함수를 적용하면 의도했던 결과가 나온다!