この記事ではSQL Serverで使用できる「STUFF」という便利な関数の使い方について、
解説していきます!
他にも便利な関数があれば、別記事にて使用方法を解説していきたいと思います!
STUFF 関数とは
RDBMSのSQLで使用することができるDBの値を加工した上で取得することができる関数がいくつかあります。
その中で、「STUFF」という関数があり、これは特定の文字列のうち、入れ替えたい文字列とその入れ替えの位置や文字数を指定して、
指定した通りに変換された値を返してくれる便利な関数となっています。
STUFF関数を使用することで、値を取得した際にもうすでに指定した通りに変換したい値となって返却されており、
いちいち値を取得元で加工する必要がなくなります。
以下で詳しい使い方を解説していきます。
STUFF 関数の書式
STUFF関数の書式、指定する引数などは以下のように設定していますので、こちらの書式に則って関数を使用してください。
- 書式 : STUFF (string1, position, length, string2)
第1引数(string1) : 入れ替え元の文字列(DBから取得できる元々の値)
第2引数(position): 入れ替えを開始したい文字列位置
第3引数(length) : 入れ替える文字数
第4引数(string2) : 入れ替える文字列
戻り値 : 変換された値
STUFF 関数の使用例
motostring → abcdefg
henkanstring → xyz
STUFF(motostring, 3, 5, henkanstring)
上記の場合、
motostringの「abcdefg」の3文字目の「c」から5文字分の「cdefg」をhenkanstringの「xyz」で変換され、
返却される変換値は「abxyz」となります。
(もう少し良い例があれば追記します。。)