TO_SINGLE_BYTE スカラー関数

TO_SINGLE_BYTE 関数は、ストリングにマルチバイト文字が存在するときに、等価の 1 バイト文字が存在すれば等価文字に変換して戻します。

構文図を読む構文図をスキップするTO_SINGLE_BYTE(string-expression )

スキーマは SYSIBM です。

UTF-8 コード・ポイントで U+0020 から U+007E の範囲の文字で表記される、等価 1 バイト文字が存在する文字のみが変換されます。 マルチバイト文字に等価 1 バイト文字が存在しない場合には、変更されません。

この関数は、UNICODE および IBM-943 コード・ページで作成されたデータベースでのみサポートされます (SQLCODE 42997)。

string-expression
変換されるストリングを指定する式。 この式は 組み込み CHAR または VARCHAR の データ・タイプの値を戻す必要があります。Unicode データベースでは、指定した引数が GRAPHIC または VARGRAPHIC のデータ・タイプであると、まず VARCHAR に変換されてから、関数が評価されます。 式を FOR BIT DATA として定義される文字ストリングとすることはできません (SQLSTATE 42815)。

結果のデータ・タイプ、コード・ページ、および長さ属性は、引数のデータ・タイプ、コード・ページ、および長さ属性と同じです。 引数が NULL になる可能性がある場合、結果も NULL になる可能性があります。引数が NULL の場合、結果は NULL 値になります。

全角 UTF-8 文字「ABC」(16 進形式で x'efbca1efbca2efbca3') を等価の 1 バイト文字に変換します。

   VALUES TO_SINGLE_BYTE(x'efbca1efbca2efbca3')

この結果は、値「ABC」(16 進形式で x'414243') になります。