반응형
문자열 변경 함수 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 문자열 치환
반응형
'프로그래밍 > MSSQL' 카테고리의 다른 글
[MSSQL] 로그인 등록/수정/삭제 (오류 암호의 유효성을 검사하지 못했습니다.) (0) | 2019.12.10 |
---|---|
[MSSQL] SPLIT 문자열 구분자로 자르기 (0) | 2019.11.29 |
[MSSQL] COLLATE/COLLATION 데이터 정렬 (0) | 2019.11.28 |
[MSSQL] 테이블 '#테이블명'이(가) 없거나 권한이 없어서 삭제할 수 없습니다. (0) | 2019.11.27 |
[MSSQL] TOP with UPDATE, DELETE (N개의 행만 수정, 삭제) (0) | 2019.11.26 |