MySQL has a BIT_LENGTH() function that allows you to get the length of a string, measured in bits.
This function is similar to the LENGTH() function, which returns the length of a string in bytes. The same is true for the OCTET_LENGTH() function, which is a synonym for the LENGTH() function.
Syntax
Here’s how the syntax goes:
BIT_LENGTH(str)
Where str is the string you need the bit length of.
Example – Single Character
Here’s an example using a character from the ASCII range:
SELECT BIT_LENGTH('A');
Result:
+-----------------+
| BIT_LENGTH('A') |
+-----------------+
| 8 |
+-----------------+
In this first example, we can see that the letter A has a length of 8 bits.
Example – Multiple Characters
Let’s add some more characters:
SELECT BIT_LENGTH('Anyone out there?');
Result:
+---------------------------------+
| BIT_LENGTH('Anyone out there?') |
+---------------------------------+
| 136 |
+---------------------------------+
Example – Unicode Character
Here’s an example using the Euro sign. This is outside the ASCII range and it uses more storage space (i.e. more bits):
SELECT BIT_LENGTH('€');
Result:
+-------------------+
| BIT_LENGTH('€') |
+-------------------+
| 24 |
+-------------------+