本文介绍二进制函数的基本语法及示例。

注意
  • 在日志服务分析语句中,表示字符串的字符必须使用单引号('')包裹,无符号包裹或被双引号("")包裹的字符表示字段名或列名。例如:'status'表示字符串status,status"status"表示日志字段status。
  • varbinary类型是二进制字符类型,varchar类型是可变长度字符类型。
函数名称 语法 说明
from_base64函数 from_base64(x) 将BASE64编码的字符串解码为二进制类型的数据。
from_base64url函数 from_base64url(x) 使用URL安全字符将BASE64编码的字符串解码为二进制类型的数据。
from_big_endian_64函数 from_big_endian_64(x) 将大端模式的二进制类型的数据转化成数字。
from_hex函数 from_hex(x) 将十六进制类型的数据转化成二进制类型的数据。
length函数 length(x) 计算二进制类型的数据的长度。
md5函数 md5(x) 对二进制类型的数据进行MD5编码。
to_base64函数 to_base64(x) 对二进制类型的数据进行BASE64编码。
to_base64url函数 to_base64url(x) 使用URL安全字符将二进制类型的数据进行BASE64编码。
to_hex函数 to_hex(x) 将二进制类型的数据转化成十六进制类型的数据。
to_big_endian_64函数 to_big_endian_64(x) 将数字转化为大端模式的二进制类型的数据。
sha1函数 sha1(x) 对二进制类型的数据进行SHA1加密。
sha256函数 sha256(x) 对二进制类型的数据进行SHA256加密。
sha512函数 sha512(x) 对二进制类型的数据进行SHA512加密。
xxhash64函数 xxhash64(x) 对二进制类型的数据进行xxHash64加密。

from_base64函数

from_base64函数用于将BASE64编码的字符串解码为二进制类型的数据。

语法

from_base64(x)

参数说明

参数 说明
x 参数值为binary类型。

返回值类型

varbinary类型。

注意 varbinary类型存在不可见字符,返回结果仍以BASE64编码格式展示。
  • 如果返回值是二进制类型的不可见字符,则您可以使用to_hex函数将其转换为十六进制类型的数据。
  • 如果返回值是二进制类型的可见字符,则您可以使用from_utf8函数将其转换为UTF-8字符串。

示例

将BASE64编码的字符串解码为二进制类型的数据后,再转换为十六进制类型的数据。

  • 查询和分析语句
    * | SELECT to_hex(from_base64('c2xz'))
  • 查询和分析结果from_base64

from_base64url函数

from_base64url函数使用URL安全字符将BASE64编码的字符串解码为二进制类型的数据。

语法

from_base64url(x)

参数说明

参数 说明
x 参数值为binary类型。

返回值类型

varbinary类型。
注意 varbinary类型存在不可见字符,返回结果仍以BASE64编码格式展示。
  • 如果返回值是二进制类型的不可见字符,则您可以使用to_hex函数将其转换为十六进制类型的数据。
  • 如果返回值是二进制类型的可见字符,则您可以使用from_utf8函数将其转换为UTF-8字符串。

示例

使用URL安全字符将BASE64编码的字符串解码为二进制类型的数据。

  • 查询和分析语句
    * | SELECT to_hex(from_base64url('c2xz'))
  • 查询和分析结果from_base64

from_big_endian_64函数

from_big_endian_64函数用于将大端模式的二进制类型的数据转化成数字。

语法

from_big_endian_64(x)

参数说明

参数 说明
x 参数值为binary类型。

返回值类型

bigint类型。

示例

将大端模式的二进制类型的数据(10)转化成数字。

  • 查询和分析语句
    * | SELECT from_big_endian_64(to_big_endian_64(10))
  • 查询和分析结果from_big_endian_64

from_hex函数

from_hex函数将十六进制类型的数据转化成二进制类型的数据。

语法

from_hex(x)

参数说明

参数 说明
x 参数值为varbinary类型。

返回值类型

varbinary类型。

示例

将十六进制类型的数据(D74D)转换为二进制类型的数据。

  • 查询和分析语句
    * | SELECT from_hex('D74D')
  • 查询和分析结果from_hex

length函数

length函数用于计算二进制类型的数据的长度。

语法

length(x)

参数说明

参数 说明
x 参数值为binary类型。

返回值类型

bigint类型。

示例

计算region字段值的长度。

  • 查询和分析语句
    * | SELECT length('00101000')
  • 查询和分析结果length

md5函数

md5函数用于对二进制类型的数据进行MD5编码。

语法

md5(x)

参数说明

参数 说明
x 参数值为varbinary类型。

返回值类型

varbinary类型。

示例

对二进制类型的数据(1101)进行MD5编码。

  • 查询和分析语句
    * | SELECT MD5(from_base64('1101')) AS md5
  • 查询和分析结果MD5

to_base64函数

to_base64函数用于对二进制类型的数据进行BASE64编码。

语法

to_base64(x)

参数说明

参数 说明
x 参数值为binary类型。

返回值类型

varchar类型。

示例

对二进制类型的数据(10)进行BASE64编码。

  • 查询和分析语句
    * | SELECT  to_base64(from_base64('10')) AS base64
  • 查询和分析结果to_base64

to_base64url函数

to_base64url函数使用URL安全字符对二进制类型的数据进行BASE64编码。

语法

to_base64url(x)

参数说明

参数 说明
x 参数值为binary类型。

返回值类型

varchar类型。

示例

使用URL安全字符对二进制类型的数据(100)进行BASE64编码。

  • 查询和分析语句
    * | SELECT  to_base64url(from_base64('100'))
  • 查询和分析结果 to_base64url

to_hex函数

to_hex函数用于将二进制类型的数据转化成十六进制类型的数据。

语法

to_hex(x)

参数说明

参数 说明
x 参数值为binary类型。

返回值类型

varchar类型。

示例

将二进制类型的数据(100)转化成十六进制类型的数据。

  • 查询和分析语句
    * | SELECT to_hex(from_base64('100'))
  • 查询和分析结果to_hex

to_big_endian_64函数

to_big_endian_64函数用于将数字转化为大端模式的二进制类型的数据。

语法

to_big_endian_64(x)

参数说明

参数 说明
x 参数值为bigint类型。

返回值类型

varbinary类型。

示例

将数字0转换为大端模式的二进制类型的数据。

  • 查询和分析语句
    * | SELECT to_big_endian_64(0)
  • 查询和分析结果to_big_endian_64

sha1函数

sha1函数用于对二进制类型的数据进行SHA1加密。

语法

sha1(x)

参数说明

参数 说明
x 参数值为binary类型。

返回值类型

varbinary类型。

示例

对二进制类型的数据(1101)进行SHA1加密。

  • 查询和分析语句
    * | SELECT sha1(from_base64('1101')) AS sha1
  • 查询和分析结果sha1

sha256函数

sha256函数用于对二进制类型的数据进行SHA256加密。

语法

sha256(x)

参数说明

参数 说明
x 参数值为binary类型。

返回值类型

varbinary类型。

示例

对二进制类型的数据(1101)进行SHA256加密。

  • 查询和分析语句
    * | SELECT sha256(from_base64('1101')) AS sha256
  • 查询和分析结果sha256

sha512函数

sha512函数用于对二进制类型的数据进行SHA512加密。

语法

sha512(x)

参数说明

参数 说明
x 参数值为binary类型。

返回值类型

varbinary类型。

示例

对二进制类型的数据(1101)进行SHA512加密。

  • 查询和分析语句
    * | SELECT sha512(from_base64('1101')) AS sha512
  • 查询和分析结果sha512

xxhash64函数

xxhash64函数用于对二进制类型的数据进行xxHash64加密。

语法

xxhash64(x)

参数说明

参数 说明
x 参数值为binary类型。

返回值类型

varbinary类型。

示例

对二进制类型的数据(10)进行xxhash64加密。

  • 查询和分析语句
    * | SELECT xxhash64(from_base64('10'))
  • 查询和分析结果xxhash64