我有以下代码,它根据空间将字符串拆分为 2 段,但我想使用此代码将字符串拆分为 3 段而不是 2 段。可能吗 ?
declare @strs nvarchar(max)
set @strs = 'Twinkle Twinkle Little Star, How I wounder what you are.'
set @strs = reverse(@strs)
select reverse(@strs) String,
reverse(right(@strs,len(@strs) - charindex(' ',@strs,30))) Description1,
ltrim(reverse(left(@strs,charindex(' ',@strs,30)))) Description2
实际上我必须将数据从 table1 复制到 table2。表 1 具有字段“公司名称”,即 varchar(120)。但是 table2 有 3 个字段,每个字段是 varchar(40)" companyname1 ", " companyname2 "," companyname3 ”。我需要将字符串分成 3 部分,但要以合乎逻辑的方式,基于空间和 40 个字符的限制。
例如,如果字符串是“ Alufinish Gesellschaft für Verfahrenstechnik u. zur Metalloberflächenbehandlung mbH & C ”
它应该在空间的基础上像这样分裂
" Alufinish Gesellschaft für " " Verfahrenstechnik u. zur * " " *Metalloberflächenbehandlung mbH & C "