1
에서 문자열의 시작과 끝에서 알파벳 문자를 제외하고 테이블 행에 ".", ";", ","등의 비 알파벳 문자로 시작하고 끝나는 데이터가 있어야합니다. 문자열에서 제거해야합니다. 어떻게해야합니까? 같은 패턴을 사용하여 각 패턴을 검색하고 필터해야합니다. 다른 더 좋은 방법이 있습니까?쿼리를 제거하려면 SQL Server
에서 문자열의 시작과 끝에서 알파벳 문자를 제외하고 테이블 행에 ".", ";", ","등의 비 알파벳 문자로 시작하고 끝나는 데이터가 있어야합니다. 문자열에서 제거해야합니다. 어떻게해야합니까? 같은 패턴을 사용하여 각 패턴을 검색하고 필터해야합니다. 다른 더 좋은 방법이 있습니까?쿼리를 제거하려면 SQL Server
아래의 기능은 다른 비 알파벳 문자를 문자열에서 제거합니다.
IF object_id('dbo.GetAlphachars') is not NULL
DROP FUNCTION dbo.GetNumeric
GO
CREATE FUNCTION dbo.GetAlphachars (@strAlphachars VARCHAR(256))
RETURNS VARCHAR(256)
AS
BEGIN
DECLARE @intAlpha INT
SET @intAlpha = PATINDEX('%[^a-z]%', @strAlphachars)
BEGIN
WHILE @intAlpha > 0
BEGIN
SET @strAlphachars = STUFF(@strAlphachars, @intAlpha, 1, '')
SET @intAlpha = PATINDEX('%[^a-z]%', @strAlphachars)
END
END
RETURN ISNULL(@strAlphachars ,0)
END
GO
예.
CREATE table vish(val varchar(20));
INSERT into vish values('.,,.?ishhh>...,');
SELECT dbo.getalphachars(val) from vish;
result
------------
ishhh
시도한 내용을 게시 할 수 있습니까? –