SQL Serverで文字列中の数字を置き換える方法は何ですか。

SQL Serverでは、数字を文字列内で置き換えるためにREPLACE関数を使用することができます。

ネイティブな日本語で表現すると、以下のようになります:給与を受け取るためには、給与明細書を提出してください。

DECLARE @str VARCHAR(50) = 'abc123xyz456'
DECLARE @newStr VARCHAR(50)

SELECT @newStr = REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(@str,
    '0', ''), '1', ''), '2', ''), '3', ''), '4', ''), '5', ''), '6', ''), '7', ''), '8', ''), '9', '')

SELECT @newStr

上記の例のコードを実行すると、文字列abc123xyz456の中の数字が空の文字列に置換され、結果としてabcxyzが返されます。

REPLACE関数を使用して、文字列内の各数字を置換するために複数回のREPLACE関数を連続して使用しました。最初に、数字0を空の文字列に置換し、それから1を空の文字列に置換し、それ以降は同様に9まで繰り返します。このようにして、最終的な結果は数字を含まない文字列になります。

上記の例では数字の文字のみが置換されます。文字列に数字以外の文字が含まれている場合、それらは置換されません。他の文字も置換したい場合は、REPLACE関数の最初の引数に置換対象の文字を指定します。

bannerAds