我需要从 T-SQL 中的 SELECT 语句中过滤(删除)扩展 ASCII 字符。
我正在使用存储过程来执行此操作。
预期输入:
ËËËËeeeeËËËË
预期输出:
eeee
我所找到的一切都是为了MySQL https://forums.oracle.com/forums/thread.jspa?threadID=995686.
我在用着 :
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
检查一下:SQLServer中心 http://www.sqlservercentral.com/Forums/Topic1001736-391-1.aspx#bm1015640
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)