Select charindex('% %',CAST(X.MyCharStringField AS NVARCHAR(max))) from X
我正在弄清楚如何拆分在字符串值之间有两个空格的字段。
示例字段内容
'AFLOP 46.95 46.95 36.95 0 0 '
当再次使用表 varchar 字段时,charindex 和 patindex 都返回 0,但如果我声明一个 varchar(max) 变量并用它进行测试,则返回位置。
我不知道如何使用表 varchar(max) 字段来解决这个问题。
这个作品
Declare @theBefore varchar(100)
SET @theBefore = 'AFLOP 46.95 46.95 36.95 0 0 '
select charindex(' ',@theBefore) as spaceIndex,SUBSTRING(@theBefore,0,6)as ITEM_ID
,ltrim(rtrim(SUBSTRING(@theBefore,charindex(' ',@theBefore),len(@theBefore)+2))) as BEFORE
这不起作用,为每个记录 char 字符串值返回 0
Select charindex('% %',CAST(X.MyCharStringField AS NVARCHAR(max))) from X
有人知道为什么吗?