MariaDB
 sql >> база данни >  >> RDS >> MariaDB

MariaDB LENGTHB() Обяснено

В MariaDB, LENGTHB() е вградена низова функция, която връща дължината на дадения низов аргумент, измерена в байтове.

Синтаксис

Синтаксисът е така:

LENGTHB(str)

Където str е низът, за който ще бъде върната дължината.

Пример

Ето един основен пример:

SELECT LENGTHB('café');

Резултат:

+------------------+
| LENGTHB('café')  |
+------------------+
|                5 |
+------------------+

В този случай низът е дълъг четири знака, но LENGTHB() върна 5 . Това е така, защото последният символ използва два байта.

Сравнение с CHAR_LENGTH() и BIT_LENGTH()

Ето едно бързо сравнение между LENGTHB() , CHAR_LENGTH() (който връща броя на знаците в низа) и BIT_LENGTH() (който връща броя на битовете в низа):

SELECT 
    LENGTHB('อ'),
    CHAR_LENGTH('อ'),
    BIT_LENGTH('อ');

Резултат:

+----------------+--------------------+-------------------+
| LENGTHB('อ')   | CHAR_LENGTH('อ')   | BIT_LENGTH('อ')   |
+----------------+--------------------+-------------------+
|              3 |                  1 |                24 |
+----------------+--------------------+-------------------+

Този тайландски знак ( ) използва 3 байта и следователно LENGTHB() връща 3 .

CHAR_LENGTH() връща 1 , защото все още е само един знак и BIT_LENGTH() връща броя на битовете (24 ).

Не-низови

Ако аргументът не е низ, той се преобразува в низ.

Ето още един пример, който използва число:

SELECT LENGTHB(1234);

Резултат:

+---------------+
| LENGTHB(1234) |
+---------------+
|             4 |
+---------------+

Нулеви аргументи

Предаването на null връща null :

SELECT LENGTHB(null);

Резултат:

+---------------+
| LENGTHB(null) |
+---------------+
|          NULL |
+---------------+

Липсващ аргумент

Извикване на LENGTHB() без подаване на аргумент води до грешка:

SELECT LENGTHB();

Резултат:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'LENGTHB'

LENGTHB() срещу LENGTH()

LENGTHB() функцията е подобна на LENGTH() функция, с изключение на начина, по който работи в режим на Oracle.

LENGTHB() функцията работи по същия начин, независимо в кой режим се намира (т.е. връща броя на байтовете в низа).

LENGTH() от друга страна, се държи различно, в зависимост от това дали е в режим на Oracle или режим по подразбиране.

По-конкретно, когато е в режим по подразбиране, LENGTH() измерва низа в байтове. Но когато е в режим на Oracle, той измерва низа в символи .


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Сравняване на Amazon RDS Recovery Point-in-Time с ClusterControl

  2. Как да изброите всички съхранени процедури в MariaDB

  3. Лесният начин за внедряване на MySQL Galera Cluster в AWS

  4. Превключване на база данни и отказ за уебсайтове на Drupal, използващи MySQL или PostgreSQL

  5. Подготовка на MySQL или MariaDB сървър за производство - част втора