본문 바로가기

프로그래밍/MSSQL

[MSSQL] TEXT 타입에 REPLACE 함수 적용

반응형

 

 

 

문자열 변경 함수 REPLACE를 TEXT 타입 칼럼에도 적용

REPLACE 함수는 다음과 같이 사용한다

 

SELECT REPLACE(COL1, '원래문자', '변경할문자') FROM TABLE_A

 

여기서 만약, COL1 컬럼의 타입이 TEXT 타입일 경우 아래와 같은 오류메세지를 반환할 것이다.

 

메시지 8116, 수준 16, 상태 1, 줄 34

replace 함수의 인수 1에 대한 인수 데이터 형식 text이(가) 잘못되었습니다.

 

 

 

 

해결 방법

 

SELECT REPLACE(CONVERT(VARCHAR(MAX),COL1), '원래문자', '변경할문자') FROM TABLE_A

 

데이터타입 변경 함수 CONVERT를 이용하여 COL1 칼럼을 VARCHAR 타입으로 변경 후 사용해준다.

 

 

 

 

예제

 

SELECT
	text_col
	, REPLACE(CONVERT(VARCHAR(MAX),text_col), '안녕', '메롱') AS 'result'
FROM Table_1

 

결과 데이터

 

 

 

[MSSQL] STUFF, REPLACE 문자열 치환

 

 

 

반응형