Binary functions and operators
Binary operators
The ||
operator performs concatenation.
Binary functions
concat
Returns the concatenation of binary1
, binary2
, ...
, binaryN
.
This function provides the same functionality as the
SQL-standard concatenation operator (||
).
length
Returns the length of binary
in bytes.
lpad
Left pads binary
to size
bytes with padbinary
.
If size
is less than the length of binary
, the result is
truncated to size
characters. size
must not be negative
and padbinary
must be non-empty.
rpad
Right pads binary
to size
bytes with padbinary
.
If size
is less than the length of binary
, the result is
truncated to size
characters. size
must not be negative
and padbinary
must be non-empty.
substr
Returns the rest of binary
from the starting position start
,
measured in bytes. Positions start with 1
. A negative starting position
is interpreted as being relative to the end of the string.
Returns a substring from binary
of length length
from the starting
position start
, measured in bytes. Positions start with 1
. A
negative starting position is interpreted as being relative to the end of
the string.
reverse
Returns binary
with the bytes in reverse order.
Base64 encoding functions
The Base64 functions implement the encoding specified in RFC 4648.
from_base64
Decodes binary data from the base64 encoded string
.
to_base64
Encodes binary
into a base64 string representation.
from_base64url
Decodes binary data from the base64 encoded string
using the URL safe alphabet.
to_base64url
Encodes binary
into a base64 string representation using the URL safe alphabet.
from_base32
Decodes binary data from the base32 encoded string
.
to_base32
Encodes binary
into a base32 string representation.
Hex encoding functions
from_hex
Decodes binary data from the hex encoded string
.
to_hex
Encodes binary
into a hex string representation.
Integer encoding functions
from_big_endian_32
Decodes the 32-bit two’s complement big-endian binary
.
The input must be exactly 4 bytes.
to_big_endian_32
Encodes integer
into a 32-bit two’s complement big-endian format.
from_big_endian_64
Decodes the 64-bit two’s complement big-endian binary
.
The input must be exactly 8 bytes.
to_big_endian_64
Encodes bigint
into a 64-bit two’s complement big-endian format.
Floating-point encoding functions
from_ieee754_32
Decodes the 32-bit big-endian binary
in IEEE 754 single-precision floating-point format.
The input must be exactly 4 bytes.
to_ieee754_32
Encodes real
into a 32-bit big-endian binary according to IEEE 754 single-precision floating-point format.
from_ieee754_64
Decodes the 64-bit big-endian binary
in IEEE 754 double-precision floating-point format.
The input must be exactly 8 bytes.
to_ieee754_64
Encodes double
into a 64-bit big-endian binary according to IEEE 754 double-precision floating-point format.
Hashing functions
crc32
Computes the CRC-32 of binary
. For general purpose hashing, use
xxhash64
, as it is much faster and produces a better quality hash.
md5
Computes the MD5 hash of binary
.
sha1
Computes the SHA1 hash of binary
.
sha256
Computes the SHA256 hash of binary
.
sha512
Computes the SHA512 hash of binary
.
spooky_hash_v2_32
Computes the 32-bit SpookyHashV2 hash of binary
.
spooky_hash_v2_64
Computes the 64-bit SpookyHashV2 hash of binary
.
xxhash64
Computes the xxHash64 hash of binary
.
murmur3
Computes the 128-bit MurmurHash3
hash of binary
.
HMAC functions
hmac_md5
Computes HMAC with MD5 of binary
with the given key
.
hmac_sha1
Computes HMAC with SHA1 of binary
with the given key
.
hmac_sha256
Computes HMAC with SHA256 of binary
with the given key
.
hmac_sha512
Computes HMAC with SHA512 of binary
with the given key
.