Функции UNICODE и NCHAR

Функция UNICODE(<строковое выражение>) возвращает номер в кодировке Unicode первого символа строкового выражения. Функция NCHAR(<целое число>) возвращает символ по его номеру в кодировке Unicode. Приведем несколько примеров.

SELECT ASCII('а'), UNICODE('а');
🚫
[[ error ]]
[[ column ]]
NULL [[ value ]]

Возвращает код ASCII и номер русской буквы «а» в кодировке Unicode: 224 и 1072.

SELECT CHAR(ASCII('а')), CHAR(UNICODE('а'));
🚫
[[ error ]]
[[ column ]]
NULL [[ value ]]

Здесь мы пытаемся восстановить символ по его коду. Получаем а и NULL. NULL-значение возвращается потому, что кода 1072 нет в обычной кодовой таблице.

SELECT CHAR(ASCII('а')), NCHAR(UNICODE('а'));
🚫
[[ error ]]
[[ column ]]
NULL [[ value ]]

Теперь все нормально, в обоих случаях мы получаем а.

Наконец,

SELECT NCHAR(ASCII('а'));
🚫
[[ error ]]
[[ column ]]
NULL [[ value ]]

даст à, так как номер 224 в кодировке Unicode соответствует именно этой букве.