VARBINARY スカラー関数
VARBINARY 関数は、任意のデータ・タイプのストリングの VARBINARY (可変長バイナリー・ストリング) 表現を戻します。
スキーマは SYSIBM です。
- string-expression
- ストリング・データ・タイプの値を戻す式。
- integer
- 結果の VARBINARY データ・タイプの長さ属性を指定する整数定数の値。
1 から 32672 までの範囲の値でなければなりません。integer を指定しない場合、結果の長さ属性は、以下の値の小さいほうになります。
- VARBINARY データ・タイプの最大長
- バイト単位で表された string-expression のデータ・タイプの長さ属性
- string-expression が、バイナリー・ストリング、FOR BIT DATA の文字ストリング、またはストリング単位 OCTETS の文字ストリングの場合、長さ属性。
- string-expression が、ストリング単位 CODEUNITS16 または 2 バイトのグラフィック・ストリングの場合、長さ属性の 2 倍
- string-expression が、ストリング単位 CODEUNITS32 の文字ストリングまたはグラフィック・ストリングの場合、長さ属性の 4 倍
string-expression の長さ属性がゼロで、integer 引数を指定していない場合、結果の長さ属性は 1 になります。
関数の結果は VARBINARY です。 最初の引数が NULL になる可能性がある場合、結果も NULL になる可能性があります。 最初の引数が NULL であれば、結果は NULL 値になります。
結果の実際の長さは、結果の長さ属性と、string-expression の実際の長さ (バイト単位) の小さいほうになります。
バイナリー・ストリングに変換された string-expression の長さが、結果の長さ属性より長い場合、切り捨てが実行されます。
以下の状況では警告 (SQLSTATE 01004) が戻されます。
- 最初の引数が文字ストリングまたはグラフィック・ストリング (CLOB および DBCLOB を除く) であり、非ブランク文字が切り捨てられる。
- 最初の引数がバイナリー・ストリング (BLOB を除く) であり、非 16 進ゼロが切り捨てられる。
例
- 次の関数は、長さ属性が 1、実際の長さが 0、値が空ストリングの可変長バイナリー・ストリングを戻します。
SELECT VARBINARY('',1) FROM SYSIBM.SYSDUMMY1 - 次の関数は、長さ属性が 5、実際の長さが 3、値が BX'4B4248' の可変長バイナリー・ストリングを戻します。
SELECT VARBINARY('KBH',5) FROM SYSIBM.SYSDUMMY1 - 次の関数は、長さ属性が 3、実際の長さが 3、値が BX'4B4248' の可変長バイナリー・ストリングを戻します。
SELECT VARBINARY('KBH') FROM SYSIBM.SYSDUMMY1 - 次の関数は、長さ属性が 3、実際の長さが 3、値が BX'4B4248' の可変長バイナリー・ストリングを戻します。
SELECT VARBINARY('KBH ',3) FROM SYSIBM.SYSDUMMY1 - 次の関数は、長さ属性が 3、実際の長さが 3、値が BX'4B4248' の可変長バイナリー・ストリングを、警告 (SQLSTATE 01004) と共に戻します。
SELECT VARBINARY('KBH 93',3) FROM SYSIBM.SYSDUMMY1
