二進位函數和運算子

二進位運算子

|| 運算子執行串連。

二進位函數

length(二進位) -> bigint()

傳回 binary 的長度 (以位元組為單位)。

concat(二進位1, ..., 二進位N) -> varbinary()

傳回 binary1binary2...binaryN 的串連。此函數提供與 SQL 標準串連運算子 (||) 相同的功能。

substr(二進位, 開始) -> varbinary()

傳回從起始位置 start 開始的 binary 其餘部分,以位元組為單位。位置從 1 開始。負的起始位置會被解譯為相對於字串的結尾。

substr(二進位, 開始, 長度) -> varbinary()

傳回從起始位置 start 開始,長度為 lengthbinary 子字串,以位元組為單位。位置從 1 開始。負的起始位置會被解譯為相對於字串的結尾。

to_base64(二進位) -> varchar()

binary 編碼為 base64 字串表示法。

from_base64(字串) -> varbinary()

從 base64 編碼的 string 解碼二進位資料。

to_base64url(二進位) -> varchar()

使用 URL 安全字母,將 binary 編碼為 base64 字串表示法。

from_base64url(字串) -> varbinary()

使用 URL 安全字母,從 base64 編碼的 string 解碼二進位資料。

from_base32(字串) -> varbinary()

從 base32 編碼的 string 解碼二進位資料。

to_base32(二進位) -> varchar()

binary 編碼為 base32 字串表示法。

to_hex(二進位) -> varchar()

binary 編碼為十六進位字串表示法。

from_hex(字串) -> varbinary()

從十六進位編碼的 string 解碼二進位資料。

to_big_endian_64(bigint) -> varbinary()

以 64 位元 2 補數大端格式編碼 bigint

from_big_endian_64(二進位) -> bigint()

從 64 位元 2 補數大端 binary 解碼 bigint 值。

to_big_endian_32(integer) -> varbinary()

以 32 位元二補數大端格式編碼 integer

from_big_endian_32(binary) -> integer()

從 32 位元二補數大端 binary 解碼 integer 值。

to_ieee754_32(real) -> varbinary()

根據 IEEE 754 單精度浮點數格式,以 32 位元大端二進位編碼 real

from_ieee754_32(binary) -> real()

以 IEEE 754 單精度浮點數格式解碼 32 位元大端 binary

to_ieee754_64(double) -> varbinary()

根據 IEEE 754 雙精度浮點數格式,以 64 位元大端二進位編碼 double

from_ieee754_64(binary) -> double()

以 IEEE 754 雙精度浮點數格式解碼 64 位元大端 binary

lpad(binary, size, padbinary) -> varbinary()

使用 padbinarybinary 左邊填充至 size 個位元組。如果 size 小於 binary 的長度,則結果將被截斷為 size 個字元。size 不得為負數,且 padbinary 不得為空。

rpad(binary, size, padbinary) -> varbinary()

使用 padbinarybinary 右邊填充至 size 個位元組。如果 size 小於 binary 的長度,則結果將被截斷為 size 個字元。size 不得為負數,且 padbinary 不得為空。

crc32(binary) -> bigint()

計算 binary 的 CRC-32。對於一般用途的雜湊,請使用 xxhash64(),因為它速度更快且產生更好的雜湊品質。

md5(binary) -> varbinary()

計算 binary 的 md5 雜湊值。

murmur3_x64_128(binary) -> varbinary()

計算 binary 的雜湊值,其等同於相同 binary 的 C++ MurmurHash3_x64_128 (Murmur3F)。

sha1(binary) -> varbinary()

計算 binary 的 sha1 雜湊值。

sha256(binary) -> varbinary()

計算 binary 的 sha256 雜湊值。

sha512(binary) -> varbinary()

計算 binary 的 sha512 雜湊值。

xxhash64(binary) -> varbinary()

計算 binary 的 xxhash64 雜湊值。

spooky_hash_v2_32(binary) -> varbinary()

計算 binary 的 32 位元 SpookyHashV2 雜湊值。

spooky_hash_v2_64(binary) -> varbinary()

計算 binary 的 64 位元 SpookyHashV2 雜湊值。

hmac_md5(binary, key) -> varbinary()

使用給定的 key 計算 binary 的 md5 HMAC。

hmac_sha1(binary, key) -> varbinary()

使用給定的 key 計算 binary 的 sha1 HMAC。

hmac_sha256(binary, key) -> varbinary()

使用給定的 key 計算 binary 的 sha256 HMAC。

hmac_sha512(binary, key) -> varbinary()

使用給定的 key 計算 binary 的 sha512 HMAC。

reverse(binary) -> varbinary()

傳回位元組順序相反的 binary