Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

REVERSE

文字列の文字を逆の順序で返すスカラ文字列関数です。

Synopsis

REVERSE(string-expression)

引数

string-expression 順序を逆にする文字列式。式は、列の名前や文字列リテラル、数値、または他のスカラ関数の結果を指定できます。基本となるデータ型は、任意の文字タイプ (CHAR や VARCHAR など) とすることができます。

説明

REVERSE は、string-expression の文字の順序を逆にして返します。例えば、'Hello World!' は、'!dlroW olleH' と返されます。これは、文字列の順序を逆にするだけで、その他の処理はしません。

返される文字列は、入力値のデータ型に関係なく、VARCHAR データ型となります。数値はキャノニック形式に変換され、数値文字列は順序を逆にする前にキャノニック形式に変換されることはありません。

先頭の空白や末尾の空白は順序を逆にすることによって影響されません。

NULL 値は逆にしても NULL です。

Note:

REVERSE は常に VARCHAR 文字列を返すので、一部のデータ型は順序を逆にすると無効になります。

  • 順序を逆にしたリストは有効なリストではなくなり、ストレージ形式から表示形式に変換することはできません。

  • 順序を逆にした日付は有効な日付ではなくなり、ストレージ形式から表示形式に変換することはできません。

以下の例では、Name フィールド値の順序を逆にします。ここでは、この結果、名前がミドル・イニシャルで並べ替えられます。

SELECT Name,REVERSE(Name) AS RevName
FROM Sample.Person
ORDER BY RevName

Name および RevName は同じフィールドの異なる表現というだけなので、ORDER BY RevNameORDER BY RevName,Name は同じ順序付けを実行します。

以下の例は、数値と数値文字列の順序を逆にします。

SELECT REVERSE(+007.10) AS RevNum,
       REVERSE('+007.10') AS RevNumStr

以下の埋め込み SQL の例は、$DOUBLE の数値の順序を逆にします。

  SET dnum=$DOUBLE(1.1)
  &sql(SELECT REVERSE(:dnum) INTO :drevnum)
  WRITE dnum,!
  WRITE drevnum,!

以下の例は、リストの順序を逆にしたときの動作を示しています。

SELECT FavoriteColors,REVERSE(FavoriteColors) AS RevColors
FROM Sample.Person

以下の例は、日付の順序を逆にしたときの動作を示しています。

SELECT DOB,%INTERNAL(DOB) AS IntDOB,REVERSE(DOB) AS RevDOB
FROM Sample.Person

関連項目

FeedbackOpens in a new tab