我想删除给定表列中的重复字符串。
以下是一些示例:
Input | Expected Output
---------------------------
XYXY | XY
AA | A
XYZXYZ | XYZ
ABCABCABC | ABC
我该怎么做?
最佳答案
此查询将对您有所帮助。
从表名中选择 dbo.RemoveDuplicate(ColumnName, VariableLength)。
示例: SELECT dbo.RemoveDuplicate(StudentName, 20) FROM Students。
去除重复字符串的函数:
CREATE FUNCTION RemoveDuplicate (@sInputString AS VARCHAR(10), @nLength AS INT)
RETURNS VARCHAR(Max) AS
BEGIN
DECLARE @count INT
DECLARE @new_string VARCHAR(Max)
SET @count=1
WHILE ( @count <= @nLength )
BEGIN
IF ( @new_string IS NULL )
BEGIN
SET @new_string=''
END
SET @new_string=@new_string + Substring(@sInputString, 1, 1)
SET @sInputString=REPLACE(@sInputString, Substring(@sInputString, 1, 1), '')
SET @count=@count + 1
END
RETURN @new_string
END
关于sql - 删除 SQL Server 中的重复字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26651573/