0
我需要SQL转换为C#人类可读的字符串截断:基于字符串长度人类可读的字符串截断转换SQL到C#:基于字符串长度
请帮我转换波纹管的SQL代码到C#
DECLARE @String VARCHAR(MAX),
@Size TINYINT
SELECT @String =
'Hello my name is Jeff. I need some help on a project because right now this is how the application i am working with displays data.',
@Size = 30
;WITH Peso(Part, StartPos, SIZE)
AS (
SELECT 1,
1,
CAST(
@Size - CHARINDEX(
' ',
REVERSE(LEFT(SUBSTRING(@String, 1, @Size) + ' ', @Size))
) AS INT
)
UNION ALL
SELECT Part + 1,
StartPos + SIZE + 1,
CAST(
@Size - CHARINDEX(
' ',
REVERSE(
LEFT(
SUBSTRING(@String, StartPos + SIZE + 1, @Size) +
' ',
@Size
)
)
) AS INT
)
FROM Peso
WHERE StartPos + SIZE <= DATALENGTH(@String)
)
SELECT Part,
SUBSTRING(@String, StartPos, SIZE)
FROM Peso
ORDER BY Part
原始代码:http://weblogs.sqlteam.com/peterl/archive/2009/03/18/Human-readable-string-truncation.aspx