반응형
MSSQL에서 전화번호 같은 테이블에서 숫자만 뽑아내는 함수이다.
예를 들어서 010-0000-0000 -> 01000000000 으로..
학생 테이블이 다음과 같이 있다고 치자.
CREATE FUNCTION dbo.udf_GetNumeric
(@strAlphaNumeric VARCHAR(256))
RETURNS VARCHAR(256)
AS
BEGIN
DECLARE @intAlpha INT
SET @intAlpha = PATINDEX('%[^0-9]%', @strAlphaNumeric)
BEGIN
WHILE @intAlpha > 0
BEGIN
SET @strAlphaNumeric = STUFF(@strAlphaNumeric, @intAlpha, 1, '' )
SET @intAlpha = PATINDEX('%[^0-9]%', @strAlphaNumeric )
END
END
RETURN ISNULL(@strAlphaNumeric,0)
END
GO
SELECT dbo.udf_GetNumeric(전화번호), *
FROM 학생
반응형
'Programming > MSSQL' 카테고리의 다른 글
MSSQL 날짜 계산 함수 DATEADD, DATEDIFF (0) | 2018.04.21 |
---|---|
MSSQL tempDB 옮기기 (0) | 2018.04.18 |
MSSQL 인코딩 확인 및 변경 (0) | 2018.04.17 |
MSSQL 데이터에서 문자열 찾기 (0) | 2018.04.17 |
MSSQL TABLE REBUILD (0) | 2018.04.16 |