Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL 테이블 열에 BIT_LENGTH() 함수를 적용하는 방법

MySQL 테이블의 열에 BIT_LENGTH() 함수를 적용하면, 해당 열에 저장된 문자열의 비트(bit) 수를 반환합니다. 이 함수는 문자열 길이를 바이트가 아닌 비트 단위로 측정하며, 1바이트는 8비트이므로 일반적인 영문자 한 글자당 8비트로 계산됩니다.

예제

'Student' 테이블에서 'Name' 열과 'Address' 열에 저장된 문자열의 비트 길이를 확인하고 싶다면, 다음과 같은 쿼리를 작성할 수 있습니다.

mysql> Select Name, Address, BIT_LENGTH(Name) As 'Name in Bits', BIT_LENGTH(Address) AS 'Address in Bits' from Student;
+---------+---------+--------------+-----------------+
| Name    | Address | Name in Bits | Address in Bits |
+---------+---------+--------------+-----------------+
| Gaurav  | Delhi   | 48           | 40              |
| Aarav   | Mumbai  | 40           | 48              |
| Harshit | Delhi   | 56           | 40              |
| Gaurav  | Jaipur  | 48           | 48              |
+---------+---------+--------------+-----------------+
4 rows in set (0.00 sec)

결과 해석

출력 결과를 살펴보면 계산 방식을 쉽게 이해할 수 있습니다. 예를 들어 'Gaurav'는 6글자 × 8비트 = 48비트, 'Delhi'는 5글자 × 8비트 = 40비트로 반환되었습니다. 마찬가지로 'Harshit'은 7글자이므로 56비트가 됩니다.

이처럼 BIT_LENGTH() 함수는 CHAR_LENGTH()(문자 수)나 LENGTH()(바이트 수)와 달리 문자열의 길이를 비트 단위로 반환한다는 점이 특징입니다. 특히 멀티바이트 문자셋(예: UTF-8)을 사용하는 환경에서는 한 글자가 여러 바이트를 차지할 수 있으므로, 실제 저장 공간을 비트 수준으로 정확히 파악하고 싶을 때 유용하게 활용할 수 있습니다.