0

次のような nchar 文字列フィールドがあります。

736TC I-3 密閉システム

最初の空白に「/」を挿入し、他の空白はそのままにしておく必要があります。これどうやってするの。簡単なように見えますが、私は SQL の初心者です。変更が必要な 297 のレコードもあります。

4

1 に答える 1

0

を使用して見つけることができるスペースの最初のインスタンスに aSTUFFを挿入するために使用できます。/CHARINDEX

DECLARE @x TABLE(n NCHAR(255));

INSERT @x VALUES(N'736TC I-3 Sealed System'),(N'34T I-4 Non-Sealed Whatever');

UPDATE @x SET n = STUFF(n, CHARINDEX(N' ',n), 1, N'/');

SELECT n FROM @x;

結果:

736TC/I-3 Sealed System
34T/I-4 Non-Sealed Whatever

これにより、スペースが見つからない場合、文字列の最後に the が追加されるため、節の使用/を制限したい場合があります。UPDATEWHERE

  WHERE RTRIM(n) LIKE N'% %';

(または、NCHAR明らかに長さが変動しなければならないストリングには使用をやめてください。)

于 2013-10-14T16:59:35.210 に答える