DECFLOAT_SORTKEY スカラー関数
DECFLOAT_SORTKEY 関数は、DECFLOAT 値をソートするときに使用できるバイナリー値を戻します。 ソートは、合計順序付けに関する IEEE 754R 仕様に準拠した方法で行われます。
スキーマは SYSIBM です。
- 小数点以下表現式
- DECFLOAT 値を戻す式。
decfloat-expression を、文字ストリングまたはグラフィック・ストリングのデータ・タイプにすることもできます。 ストリング入力は、暗黙的に DECFLOAT(34) の数値にキャストされます。
結果は、固定長バイナリー・ストリングで、その長さ属性は decfloat-expression が DECFLOAT(16) 値の場合は 9、decfloat-expression が DECFLOAT(34) 値の場合は 17 です。
結果はnullになる可能性があります。引数がnullの場合、結果もnull値となります。
例: 以下の CREATE TABLE ステートメントを使用して、DECFLOAT 値を含む列をもつ表を作成し、INSERT ステートメントを使用して表にデータを追加するものとします。
CREATE TABLE T1(D1 DECFLOAT(16));
INSERT INTO T1 VALUES (2.100);
INSERT INTO T1 VALUES (2.10);
INSERT INTO T1 VALUES (2.1000);
INSERT INTO T1 VALUES (2.1);次に、以下の SELECT ステートメントを使用して D1 から値を戻します。 SELECT D1 FROM T1 ORDER BY D1;SELECT ステートメントは以下の値を戻しますが、列内の数値がすべて同じ値であるために、ORDER BY 文節は無効であり、値は任意の順序で戻されます。 D1
---------
2.1
2.1000
2.10
2.100次の SELECT ステートメントは、ORDER BY 文節に DECFLOAT_SORTKEY 関数を含んでおり、正しく順序付けられた値を戻します。 SELECT D1
FROM T1
ORDER BY (DECFLOAT_SORTKEY(D1)); D1
--------
2.1000
2.100
2.10
2.1