我需要从T-sql中的SELECT语句中过滤掉(删除)扩展的ASCII字符.
我正在使用存储过程来做到这一点.
预期输入:
ËËËËeeeeËËËË
预期产量:
eeee
我找到的是MySQL.
我在用着 :
Microsoft sql Server Management Studio 11.0.2100.60 Microsoft .NET Framework 4.0.30319.17929
解决方法
好的,给一个尝试.这似乎是同样的问题.无论如何,您需要根据您的要求进行修改.
CREATE FUNCTION RemoveNonASCII ( @nstring nvarchar(255) ) RETURNS varchar(255) AS BEGIN DECLARE @Result varchar(255) SET @Result = '' DECLARE @nchar nvarchar(1) DECLARE @position int SET @position = 1 WHILE @position <= LEN(@nstring) BEGIN SET @nchar = SUBSTRING(@nstring,@position,1) --Unicode & ASCII are the same from 1 to 255. --Only Unicode goes beyond 255 --0 to 31 are non-printable characters IF UNICODE(@nchar) between 32 and 255 SET @Result = @Result + @nchar SET @position = @position + 1 END RETURN @Result END GO