二进制函数

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

日志服务支持如下二进制函数。

重要
  • 在日志服务分析语句中,表示字符串的字符必须使用单引号('')包裹,无符号包裹或被双引号("")包裹的字符表示字段名或列名。例如:'status'表示字符串status,status"status"表示日志字段status。

  • varbinary类型是二进制字符类型,varchar类型是可变长度字符类型。

函数名称

语法

说明

支持SQL

支持SPL

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