Share via


xp_sscanf (Transact-SQL)

文字列からのデータを、それぞれのフォーマット引数によって与えられる引数の位置に読み込みます。

トピック リンク アイコンTransact-SQL 構文表記規則

構文

xp_sscanf { string OUTPUT , format } [ ,argument [ ,...n ] ] 

引数

  • string
    引数の値を読み出す文字列を指定します。

  • OUTPUT
    指定した場合は、argument の値が出力パラメータに入ります。

  • format
    C 言語の sscanf 関数がサポートする書式化された文字列と同様の書式化された文字列です。現在サポートしているのは %s フォーマット引数のみです。

  • argument
    対応する format 引数の値を設定する varchar 型の変数です。

  • n
    最大 50 の引数を指定できることを示すプレースホルダです。

戻り値

0 (成功) または 1 (失敗)

結果セット

xp_sscanf は次のメッセージを返します。

Command(s) completed successfully.

権限

public ロールのメンバシップが必要です。

次の例では、xp_sscanf を使用して、ソース文字列のフォーマットにおけるそれぞれの位置に基づいて、ソース文字列から 2 つの値を抽出します。

DECLARE @filename varchar (20), @message varchar (20)
EXEC xp_sscanf 'sync -b -fproducts10.tmp -rrandom', 'sync -b -f%s -r%s', 
  @filename OUTPUT, @message OUTPUT
SELECT @filename, @message

以下に結果セットを示します。

-------------------- -------------------- 
products10.tmp        random