REVERSE

REVERSE函数用于返回倒序字符串、二进制数据或数组。

命令格式

STRING|BINARY|ARRAY REVERSE(STRING|BINARY|ARRAY <value>)

参数说明

value:必填。STRING、BINARYARRAY类型。如果输入为BIGINT、DOUBLE、DECIMALDATETIME等类型,则会隐式转换为STRING类型后参与运算。

返回值说明

返回STRING、BINARYARRAY类型,与输入参数类型一致。返回规则如下:

  • value为不支持转化成STRING、BINARYARRAY的类型时,返回报错。

  • value值为NULL时,返回NULL。

说明
  • REVERSE函数默认按字节返回倒序结果。

  • 执行SET odps.sql.bigquery.compatible=true;命令打开BigQuery兼容模式时,STRING类型数据默认按UTF-8编码返回倒序结果,BINARYARRAY类型数据默认按字节返回倒序结果。

使用示例

  • 示例1:返回字符串I love aliyun very much的倒序。

    -- 返回字符串hcum yrev nuyila evol I。
    SELECT REVERSE('I love aliyun very much');
  • 示例2:输入参数为NULL。

    -- 返回NULL。
    SELECT REVERSE(null);
  • 示例3:返回数组[2, 1, 4, 3]的倒序。

    -- 返回[3, 4, 1, 2]
    SELECT REVERSE(ARRAY(2, 1, 4, 3));
  • 示例4:返回二进制数据unhex('FA34E10293CB42848573A4E39937F479')的倒序。

    -- 返回y=F47=99=E3=A4s=85=84B=CB=93=02=E14=FA
    SELECT REVERSE(UNHEX('FA34E10293CB42848573A4E39937F479'));
  • 示例5:执行SET odps.sql.bigquery.compatible=true;命令打开BigQuery兼容模式,支持处理Emoji表情符号。

    重要

    如下命令需通过MaxCompute客户端使用脚本模式运行,详情请参见SQL脚本模式

    1. 编辑脚本模式的源码文件reverse_func.sql,并将其放在MaxCompute客户端的bin目录下,文件内容如下:

      SET odps.sql.bigquery.compatible=true;
      SELECT REVERSE("<Emoji符号>");
    2. 打开系统命令行窗口(如Windows系统的CMD),进入MaxCompute客户端的bin目录,执行如下命令:

      odpscmd -s reverse_func.sql

      执行成功后,可在LogviewResult页签查看倒序结果。

相关函数

REVERSE函数属于字符串函数,更多查找字符串、转换字符串格式的相关函数请参见字符串函数