В MariaDB, BIT_LENGTH() е вградена функция низ, която връща дължината на дадения низов аргумент в битове.
Вие предоставяте низа като аргумент, когато извиквате функцията.
Синтаксис
Синтаксисът е така:
BIT_LENGTH(str)
Където str е низът.
Пример
Ето един прост пример:
SELECT BIT_LENGTH('A'); Резултат:
+-----------------+
| BIT_LENGTH('A') |
+-----------------+
| 8 |
+-----------------+ Можем да видим, че буквата A е дълга 8 бита (т.е. 1 байт).
Ето пример, който използва знаци, които са по-дълги от 1 байт:
SELECT
BIT_LENGTH('©'),
BIT_LENGTH('ไ'),
BIT_LENGTH('ม้'); Резултат:
+------------------+-------------------+----------------------+
| BIT_LENGTH('©') | BIT_LENGTH('ไ') | BIT_LENGTH('ม้') |
+------------------+-------------------+----------------------+
| 16 | 24 | 48 |
+------------------+-------------------+----------------------+ Вторият и третият низ са тайландски знаци. Третият низ използва диакритичен знак, който в крайна сметка удвоява броя на върнатите битове.
Ето този знак със и без диакритичен знак:
SELECT
BIT_LENGTH('ม้'),
BIT_LENGTH('ม'); Резултат:
+----------------------+-------------------+
| BIT_LENGTH('ม้') | BIT_LENGTH('ม') |
+----------------------+-------------------+
| 48 | 24 |
+----------------------+-------------------+ Грешен тип аргумент
Ако аргументът не е низ, той ще бъде преобразуван в низ.
Пример:
SELECT
BIT_LENGTH(1),
BIT_LENGTH(12),
BIT_LENGTH(123); Резултат:
+---------------+----------------+-----------------+ | BIT_LENGTH(1) | BIT_LENGTH(12) | BIT_LENGTH(123) | +---------------+----------------+-----------------+ | 8 | 16 | 24 | +---------------+----------------+-----------------+
Нулеви аргументи
Предаването на null връща null :
SELECT BIT_LENGTH(null); Резултат:
+------------------+ | BIT_LENGTH(null) | +------------------+ | NULL | +------------------+
Липсващ аргумент
Извикване на BIT_LENGTH() без подаване на аргумент води до грешка:
SELECT BIT_LENGTH(); Резултат:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'BIT_LENGTH'