⌘+k ctrl+k
1.3 (稳定版)
搜索快捷键 cmd + k | ctrl + k
Blob 函数

本节描述了用于检查和操作 BLOB的函数和操作符。

名称 描述
arg1 || arg2 连接两个字符串、列表或Blob。任何 NULL 输入都将导致 NULL。另请参阅 concat(arg1, arg2, ...)list_concat(list1, list2)
base64(blob) blob 转换为 base64 编码的字符串。
concat(value, ...) 连接多个字符串、列表或Blob。NULL 输入将被跳过。另请参阅 操作符 ||
decode(blob) blob 转换为 VARCHAR。如果 blob 不是有效的 UTF-8,则转换失败。
encode(string) string 转换为 BLOB。将 UTF-8 字符转换为字面编码。
from_base64(string) 将 base64 编码的 string 转换为字符字符串(BLOB)。
from_binary(value) value 从二进制表示转换为 Blob。
from_hex(value) value 从十六进制表示转换为 Blob。
hex(blob) 使用十六进制编码将 blob 转换为 VARCHAR
md5(blob) 返回 blob 的 MD5 哈希值,作为 VARCHAR
md5_number(blob) 返回 blob 的 MD5 哈希值,作为 HUGEINT
octet_length(blob) blob 中的字节数。
read_blob(source) source(文件名、文件名列表或 glob 模式)的内容作为 BLOB 返回。更多详细信息请参阅 read_blob 指南
repeat(blob, count) blob 重复 count 次。
sha1(blob) 返回 blob 的 SHA-1 哈希值,作为 VARCHAR
sha256(blob) 返回 blob 的 SHA-256 哈希值,作为 VARCHAR
to_base64(blob) blob 转换为 base64 编码的字符串。
to_hex(blob) 使用十六进制编码将 blob 转换为 VARCHAR
unbin(value) value 从二进制表示转换为 Blob。
unhex(value) value 从十六进制表示转换为 Blob。

arg1 || arg2

描述 连接两个字符串、列表或Blob。任何 NULL 输入都将导致 NULL。另请参阅 concat(arg1, arg2, ...)list_concat(list1, list2)
示例 1 'Duck' || 'DB'
结果 DuckDB
示例 2 [1, 2, 3] || [4, 5, 6]
结果 [1, 2, 3, 4, 5, 6]
示例 3 '\xAA'::BLOB || '\xBB'::BLOB
结果 \xAA\xBB

base64(blob)

描述 blob 转换为 base64 编码的字符串。
示例 base64('A'::BLOB)
结果 QQ==
别名 to_base64

concat(value, ...)

描述 连接多个字符串、列表或Blob。NULL 输入将被跳过。另请参阅 操作符 ||
示例 concat('Hello', ' ', 'World')
结果 Hello World

decode(blob)

描述 blob 转换为 VARCHAR。如果 blob 不是有效的 UTF-8,则转换失败。
示例 decode('\xC3\xBC'::BLOB)
结果 ü

encode(string)

描述 string 转换为 BLOB。将 UTF-8 字符转换为字面编码。
示例 encode('my_string_with_ü')
结果 my_string_with_\xC3\xBC

from_base64(string)

描述 将 base64 编码的 string 转换为字符字符串(BLOB)。
示例 from_base64('QQ==')
结果 A

from_binary(value)

描述 value 从二进制表示转换为 Blob。
示例 from_binary('0110')
结果 \x06
别名 unbin

from_hex(value)

描述 value 从十六进制表示转换为 Blob。
示例 from_hex('2A')
结果 *
别名 unhex

hex(blob)

描述 使用十六进制编码将 blob 转换为 VARCHAR
示例 hex('\xAA\xBB'::BLOB)
结果 AABB
别名 to_hex

md5(blob)

描述 返回 blob 的 MD5 哈希值,作为 VARCHAR
示例 md5('\xAA\xBB'::BLOB)
结果 58cea1f6b2b06520613e09af90dc1c47

md5_number(blob)

描述 返回 blob 的 MD5 哈希值,作为 HUGEINT
示例 md5_number('\xAA\xBB'::BLOB)
结果 94525045605907259200829535064523132504

octet_length(blob)

描述 blob 中的字节数。
示例 octet_length('\xAA\xBB'::BLOB)
结果 2

read_blob(source)

描述 source(文件名、文件名列表或 glob 模式)的内容作为 BLOB 返回。更多详细信息请参阅 read_blob 指南
示例 read_blob('hello.bin')
结果 hello\x0A

repeat(blob, count)

描述 blob 重复 count 次。
示例 repeat('\xAA\xBB'::BLOB, 5)
结果 \xAA\xBB\xAA\xBB\xAA\xBB\xAA\xBB\xAA\xBB

sha1(blob)

描述 返回 blob 的 SHA-1 哈希值,作为 VARCHAR
示例 sha1('\xAA\xBB'::BLOB)
结果 65b1e351a6cbfeb41c927222bc9ef53aad3396b0

sha256(blob)

描述 返回 blob 的 SHA-256 哈希值,作为 VARCHAR
示例 sha256('\xAA\xBB'::BLOB)
结果 d798d1fac6bd4bb1c11f50312760351013379a0ab6f0a8c0af8a506b96b2525a

to_base64(blob)

描述 blob 转换为 base64 编码的字符串。
示例 to_base64('A'::BLOB)
结果 QQ==
别名 base64

to_hex(blob)

描述 使用十六进制编码将 blob 转换为 VARCHAR
示例 to_hex('\xAA\xBB'::BLOB)
结果 AABB
别名 hex

unbin(value)

描述 value 从二进制表示转换为 Blob。
示例 unbin('0110')
结果 \x06
别名 from_binary

unhex(value)

描述 value 从十六进制表示转换为 Blob。
示例 unhex('2A')
结果 *
别名 from_hex