Giống LENGTH(), hàm BIT_LENGTH() KHÔNG an toàn đa byte (not multi-byte safe).
Khác biệt với hàm an toàn đa byte như CHAR_LENGTH() hoặc CHARACTER_LENGTH() rõ rệt khi xử lý Unicode (ký tự 2 byte) hoặc UTF-8 (số byte thay đổi).
Ví dụ
mysql> SELECT BIT_LENGTH('tutorialspoint');
+------------------------------+
| BIT_LENGTH('tutorialspoint') |
+------------------------------+
| 112 |
+------------------------------+
14 ký tự × 8 bit = 112 bit (ASCII 1 byte/ký tự).
Chuyển sang Unicode (UCS-2, 2 byte/ký tự):
mysql> SET @A = CONVERT('tutorialspoint' USING ucs2);
Query OK, 0 rows affected (0.02 sec)
mysql> SELECT BIT_LENGTH(@A);
+----------------+
| BIT_LENGTH(@A) |
+----------------+
| 224 |
+----------------+
14 ký tự × 16 bit = 224 bit. BIT_LENGTH() tính theo byte thực tế lưu trữ, không theo số ký tự logic.