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?

%PLUS

数値をキャノニック照合形式に変換する照合関数です。

Synopsis

%PLUS(expression)

%PLUS expression

引数

expression 列名、数値や文字リテラル、算術式、または別の関数の結果となる式。基本となるデータ型は、任意の文字タイプとすることができます。

説明

%PLUS は、数値や数値文字列をキャノニック形式に変換してから、これらの expression 値を数値照合順に返します。

数値には、先頭と末尾のゼロ、先頭にある複数のプラス符号とマイナス符号、1 つの小数点 (.)、および指数記号 (E) を指定できます。キャノニック形式で、すべての算術演算が実行され、指数が展開され、単体のマイナス符号が先頭に付くか符号なしになり、先頭と末尾のゼロが削除されます。

数値リテラルは、文字列を囲む区切り文字を付けて指定することも、付けないで指定することもできます。数値以外の文字が文字列にあると、%PLUS では、最初の数値以外の文字で数値を切り捨て、数値部分をキャノニック形式で返します。数値でない文字列 (数値以外の文字で始まる文字列) を 0 として返します。%PLUS はさらに、NULL を 0 として返します。

%PLUS は、Caché SQL 拡張機能であり、SQL 検索クエリ用として使用されます。

%SYSTEM.UtilOpens in a new tab クラスの Collation()Opens in a new tab メソッドを使用すると、ObjectScript で同じ照合変換を実行できます。

  WRITE $SYSTEM.Util.Collation("++007.500",3)

%PLUS%MVR と比べると、%MVR では文字列内の数値部分文字列に基づいて文字列をソートしている点が異なります。

以下の例は %PLUS を使用して、Home_Street の住所を数値の順に返します。

SELECT Name,Home_Street
FROM Sample.Person
ORDER BY %PLUS(Home_Street)

上記の例では、ストリート・アドレスの整数部分が昇順の数値順に配列されています。これを以下の ORDER BY の例と比較してください。こちらでは、レコードは照合順のストリート・アドレスで配列されています。

SELECT Name,Home_Street
FROM Sample.Person
ORDER BY Home_Street

関連項目

FeedbackOpens in a new tab