В MariaDB, CHR()
е вградена низова функция, която връща знак въз основа на стойностите на кода, предоставени като аргумент.
CHR()
функцията е подобна на CHAR()
функция, с изключение на CHR()
приема само един аргумент. CHAR()
функцията, от друга страна, приема един или повече аргументи. Също така, CHAR()
приема незадължителен USING
клауза, докато CHR()
не.
CHR()
функцията беше въведена в MariaDB 10.3.1, за да осигури съвместимост с Oracle.
Синтаксис
Синтаксисът е така:
CHR(N)
Където N
е стойността, която CHR()
интерпретира като цяло число. CHR()
след това връща VARCHAR(1)
низ, състоящ се от знака, даден от кодовите стойности на това цяло число.
Наборът от символи и сортирането на низа се задават според стойностите на character_set_database
и collation_database
системни променливи.
Пример
Ето един прост пример за демонстрация:
SELECT CHR(65);
Резултат:
+---------+ | CHR(65) | +---------+ | A | +---------+
Тук предоставих цяло число и CHR()
върна съответния знак. В този случай, цялото число 65
съпоставя с главната буква A
.
Чувствителност на регистрите
Ето пример, който отличава главна буква от нейния аналог:
SELECT
CHR(72),
CHR(104);
Резултат:
+---------+----------+ | CHR(72) | CHR(104) | +---------+----------+ | H | h | +---------+----------+
Нулеви стойности
Аргумент на null
връща NULL
.
Пример:
SELECT CHR(null);
Резултат:
+-----------+ | CHR(null) | +-----------+ | NULL | +-----------+
Предаване на множество аргументи
Предаването на повече от един аргумент води до грешка:
SELECT CHR(65, 77);
Резултат:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'CHR'
Ако трябва да предадете множество аргументи, използвайте CHAR()
вместо това.
Пример:
SELECT CHAR(65, 77);
Резултат:
+--------------+ | CHAR(65, 77) | +--------------+ | AM | +--------------+