Функции для работы с VARBINARY#
Операторы#
Оператор || выполняет конкатенацию. Если один из аргументов NULL, результат также будет NULL.
Функции#
- concat(binary1, ..., binaryN) varbinary
Конкатенирует аргументы
binary1,...,binaryN. Функция аналогична оператору конкатенации||.
- length(binary) bigint
Возвращает длину
binaryв байтах.
- lpad(binary, size, padbinary) varbinary
Дополняет
binaryслева доsizeбайт с помощьюpadbinary. Еслиsizeменьше длиныbinary, результат будет усечен доsizeбайт.sizeне должен быть отрицательным,padbinaryне должен быть пустым.
- rpad(binary, size, padbinary) varbinary
Дополняет
binaryсправа доsizeбайт с помощьюpadbinary. Еслиsizeменьше длиныbinary, результат будет усечен доsizeбайт.sizeне должен быть отрицательным,padbinaryне должен быть пустым.
- substr(binary, start) varbinary
Возвращает часть
binary, начиная с байта на позицииstart. Позиции начинаются с1. Отрицательное значениеstartинтерпретируется как положение относительно конца строки.
- substr(binary, start, length) varbinary
Возвращает часть
binaryдлинойlengthбайт, начиная с байта на позицииstart. Позиции начинаются с1. Отрицательное значениеstartинтерпретируется как положение относительно конца строки.
- reverse(binary) varbinary
Возвращает
binaryбайты в обратном порядке.
Функции кодирования Base64#
Функции Bas e64 обеспечивают работу с кодировкой Base64, описанной вRFC 4648.
- from_base64(string) varbinary#
Декодирует двоичные данные из
stringв кодировке Base64.
- to_base64(binary) varchar#
Кодирует
binaryв строковое представление Base64.
- from_base64url(string) varbinary#
Декодирует двоичные данные из
stringв кодировке Base64, используя допустимые в URL символы.
- to_base64url(binary) varchar#
Кодирует
binaryв строковое представление base64, используя допустимые в URL символы.
- from_base32(string) varbinary#
Декодирует двоичные данные из
stringв кодировке Base32.
- to_base32(binary) varchar#
Кодирует
binaryв строковое представление Base32.
Функции шестнадцатеричного кодирования#
- from_hex(string) varbinary#
Декодирует двоичные данные из шестнадцатеричной
string.
- to_hex(binary) varchar#
Кодирует
binaryв шестнадцатеричное строковое представление.
Функции целочисленного кодирования#
- from_big_endian_32(binary) integer#
Декодирует 32-битный
binaryс big-endian порядком байт. Входные данные должны состоять из 4 байт.
- to_big_endian_32(integer) varbinary#
Кодирует
integerв 32-битный формат с big-endian порядком байт.
- from_big_endian_64(binary) bigint#
Декодирует 64-битный
binaryс big-endian порядком байт. Входные данные должны состоять из 8 байт.
- to_big_endian_64(bigint) varbinary#
Кодирует
bigintв 64-битный формат с big-endian порядком байт.
Функции кодирования значений с плавающей запятой#
- from_ieee754_32(binary) real#
Декодирует 32-битный
binaryс big-endian порядком байт в формате с плавающей запятой одинарной точности IEEE 754. Входные данные должны состоять из 4 байт.
- to_ieee754_32(real) varbinary#
Кодирует
realв 32-битный формат с big-endian порядком байт в соответствии с форматом чисел с плавающей запятой одинарной точности IEEE 754.
- from_ieee754_64(binary) double#
Декодирует 64-битный
binaryс big-endian порядком байт в формате с плавающей запятой двойной точности IEEE 754. Входные данные должны состоять из 8 байт.
- to_ieee754_64(double) varbinary#
Кодирует
doubleв 64-битный формат с big-endian порядком байт в соответствии с форматом чисел с плавающей запятой двойной точности IEEE 754.
хеш-функции#
- crc32(binary) bigint#
Вычисляет CRC-32
binary. Для хеширования общего назначения используйтеxxhash64(), так как он работает значительно быстрее и генерирует хеш более высокого качества.
- md5(binary) varbinary#
Вычисляет MD5-хеш
binary.
- sha1(binary) varbinary#
Вычисляет хеш SHA1
binary.
- sha256(binary) varbinary#
Вычисляет хеш SHA256
binary.
- sha512(binary) varbinary#
Вычисляет хеш SHA512
binary.
- spooky_hash_v2_32(binary) varbinary#
Вычисляет 32-битный хеш SpookyHashV2
binary.
- spooky_hash_v2_64(binary) varbinary#
Вычисляет 64-битный хеш SpookyHashV2
binary.
- xxhash64(binary) varbinary#
Вычисляет хеш xxHash64
binary
- murmur3(binary) varbinary#
Вычисляет 128-битный MurmurHash3 хеш
binary:SELECT murmur3(from_base64('aaaaaa')); -- ba 58 55 63 55 69 b4 2f 49 20 37 2c a0 e3 96 ef
Функции HMAC#
- hmac_md5(binary, key) varbinary#
Вычисляет HMAC с MD5
binaryс заданнымkey.
- hmac_sha1(binary, key) varbinary#
Вычисляет HMAC с SHA1
binaryс заданнымkey.
- hmac_sha256(binary, key) varbinary#
Вычисляет HMAC с SHA256
binaryс заданнымkey.
- hmac_sha512(binary, key) varbinary#
Вычисляет HMAC с SHA512
binaryс заданнымkey.