我有一个 nchar 字符串字段,如下所示:
736TC I-3 密封系统
我需要在第一个空白处插入一个“/”,留下其他空白。我怎样才能做到这一点。看起来应该很容易,但我对 SQL 还很陌生。还有 297 条记录需要更改。
我有一个 nchar 字符串字段,如下所示:
736TC I-3 密封系统
我需要在第一个空白处插入一个“/”,留下其他空白。我怎样才能做到这一点。看起来应该很容易,但我对 SQL 还很陌生。还有 297 条记录需要更改。
您可以使用在空间的第一个实例中STUFF
注入 a /
,您可以使用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
如果没有找到空格,这将/
在字符串的末尾添加,因此您可能希望限制UPDATE
using aWHERE
子句:
WHERE RTRIM(n) LIKE N'% %';
(或者,停止NCHAR
用于长度明显必须波动的字符串。)