すべてのプロダクト
Search
ドキュメントセンター

MaxCompute:REVERSE

最終更新日:Mar 26, 2026

REVERSE 関数は、文字列、バイナリデータ、または配列を逆の順序で返します。

構文

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

パラメーター

value: 必須。 STRING、BINARY、または ARRAY データ型の値。 入力値が BIGINT、DOUBLE、DECIMAL、DATETIME などのデータ型である場合、操作が実行される前に暗黙的に STRING 型に変換されます。

戻り値

STRING、BINARY、または ARRAY 型の値を返します。 戻り値のデータ型は、入力パラメーターのデータ型と同じです。 戻り値は、次のルールによって決まります。

  • 入力 value を STRING、BINARY、または ARRAY 型に変換できない場合は、エラーが返されます。

  • value パラメーターが null の場合、null が返されます。

説明
  • デフォルトでは、REVERSE 関数はデータをバイト単位で逆順にします。

  • SET odps.sql.bigquery.compatible=true; コマンドを実行して BigQuery 互換モードを有効にすると、REVERSE 関数は UTF-8 エンコーディングに基づいて STRING データを逆順にし、BINARY および ARRAY データはバイト単位で逆順にします。

  • 例 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 互換モードを有効にし、絵文字を処理します。

    重要

    MaxCompute クライアントのコードエディタで次のコマンドを実行できます。 詳細については、「SQL コードエディタ」をご参照ください。

    1. MaxCompute クライアントの bin フォルダに、reverse_func.sql という名前のソースファイルを作成し、次の内容を記述します。

      SET odps.sql.bigquery.compatible=true;
      SELECT REVERSE("<絵文字>");
    2. Windows のコマンドプロンプト (CMD) などのコマンドラインウィンドウを開きます。 MaxCompute クライアントの bin フォルダに移動し、次のコマンドを実行します。

      odpscmd -s reverse_func.sql

      コマンドが正常に実行された後、Logview の [結果] タブで逆順になった結果を表示できます。

関連関数

REVERSE は文字列関数です。 文字列の検索と変換に関連する関数の詳細については、「文字列関数」をご参照ください。