変更の始まり

VARBINARY_FORMAT

VARBINARY_FORMAT 関数は、format-string を使用してフォーマットされた文字ストリングのバイナリー・ストリング表現を戻します。

構文図を読む構文図をスキップする
>>-VARBINARY_FORMAT--(--expression--+------------------+--)----><
                                    '-,--format-string-'      

expression
任意の組み込み数値、文字ストリング、 またはグラフィック・ストリングのデータ・タイプの値を戻す式。 数値引数またはグラフィック引数は、関数を評価する前に文字ストリングにキャストされます。 数値またはグラフィックから文字ストリングへの変換について詳しくは、VARCHAR を参照してください。

すべての先行ブランクと末尾ブランクは、関数を評価する前に expression から除去されます。

format-string が指定されている場合、expression の長さは、format-string の長さに等しく、 かつ、expression の値は、format-string で指定されたテンプレートに準拠しなければなりません。 format-string が指定されていない場合、expression の (先行ブランクと末尾ブランクを除去した後の) 値は、範囲 '0' から '9'、'a' から 'f'、および 'A' から 'F' に属する偶数個の文字でなければなりません。 長さの文字数が奇数である場合は、ストリングの右側に文字 '0' が 1 つ埋め込まれます。

format-string
組み込み文字ストリングか、グラフィック・ストリング・データ・タイプを戻す式。format-string には、expression の値を解釈する方法に関するテンプレートが含まれています。

有効なフォーマット・ストリングは 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx' と 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX' です。 ここで、それぞれの 'x' または 'X' は、結果内の 1 つの 16 進数字に対応します。 'X' が指定されている場合、対応する 16 進数字は小文字であってはなりません。 'x' が指定されている場合、対応する 16 進数字は大文字であってはなりません。

この関数の結果は、可変長バイナリー・ストリングです。結果の長さ属性は、expression の長さ属性の半分になります。 format-string が指定されていない場合、実際の長さは (先行ブランクと末尾ブランクが除去されて、埋め込みにより文字数が偶数になった後の) expression の実際の長さの半分になります。 format-string が指定されている場合、実際の長さは (数字以外の区切り文字を除去した後の) format-string の実際の長さの半分になります。 引数のいずれかが NULL になる可能性がある場合、 結果も NULL になる可能性があります。 引数のいずれかが NULL の場合、その結果は NULL 値です。

注記

代替構文: HEXTORAW は、expression の長さが奇数 (文字数) である場合、ストリングの左側に文字 '0' が 1 つ埋め込まれることを除けば、VARBINARY_FORMAT の同義語です。 VARCHAR_BIT_FORMAT は、関数の結果が可変長文字ストリング FOR BIT DATA であることを除けば、VARBINARY_FORMAT の同義語です。

  • UUID (Universal Unique Identifier) をそのバイナリー形式で表す
    VALUES VARBINARY_FORMAT('d83d6360-1818-11db-9804-b622a1ef5492', 
                       'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx')
    戻される結果:
    BX'D83D6360181811DB9804B622A1EF5492'
  • UUID (Universal Unique Identifier) をそのバイナリー形式で表す
    VALUES VARBINARY_FORMAT('D83D6360-1818-11DB-9804-B622A1EF5492',
                       'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX')
    戻される結果:
    BX'D83D6360181811DB9804B622A1EF5492'
  • 16 進文字のストリングをバイナリー形式で表します。
    VALUES VARBINARY_FORMAT('ef01abC9')
    戻される結果:
    BX'EF01ABC9'
変更の終わり