게시판에서 내용을 작성할 때 한줄띄우기 (엔터)를 입력하여 넣고
목록에서 출력하려고 할 때
한 줄 띄운것이 html에서 안 읽혀서
한 줄 띄워지지 않고 표출 될 때가 있다.
그래서 쿼리에서 엔터를 replace 처리하여 <br>로 바꾸어 출력하였다.
우선 replace 하기 전에 알아야 될 것은
무엇을 <br>로 바꿔야 하는지 였다.
한줄띄우기는 보통 [캐리지 리턴] 과 [라인피드]로 이루어져있다.
캐리지 리턴 : \r 동일한 줄의 첫번째 자리에 커서를 위치시킴
라인피드 : \n 현재커서가 위치한 곳에서 한줄 아래로 이동
즉 엔터는 캐리지 리턴 후 라인피드를 한 것
자세한건 여기서 : http://m.blog.daum.net/chan6030/7556650
////////////////////////////
그래서 우리는 캐리지리턴+라인피드가 합쳐진 문자를 <br>태그로 치환하면 된다.
ex)
REPLACE(MSSAGE, CHAR(13)+CHAR(10), '<![CDATA[<br>]]>') AS MSSAGE
CHAR(13) = 캐리지 리턴 \r
CHAR(10) = 라인피드 \n
'공부 > SQL' 카테고리의 다른 글
(mssql) BETWEEN [범위 조건] (0) | 2015.12.15 |
---|---|
(mssql) SUBSTRING 문자열 자르기 (0) | 2015.12.09 |
(mssql) 문자열 찾아 바꾸기 REPLACE (0) | 2015.12.09 |
(mssql) 행 번호 가져오기 ROW_NUMBER() (0) | 2015.12.09 |
(mssql) UNION ALL 쿼리 합치기 (0) | 2015.12.09 |