Background Image

FORUM

조회 수 245 추천 수 0 댓글 5
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄


* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.

OS
Window7 32bit, Linux 64bit 등
CUBRID Ver.
[cubrid_rel] 수행 결과
CUBRID TOOL Ver.
[도움말]-[버전정보] 확인
응용 환경(API)
java, php, odbc 등 입력


* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.

 

에러 내용 및 재현 방법 재현 가능한 Source와 SQL
관련 테이블(인덱스, 키정보 포함) 정보 CUBRID 홈 디렉토리 아래 log 디렉토리 압축


-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------
SELECT CONCAT_WS(',',컬럼1,컬럼2,컬럼3)

FROM 테이블

 

이렇게 진행할 시 데이터가

아래와 같이 나타납니다.

 

141,1421,1422,1420, < - 이 같은 데이터가 나타납니다. 마지막에 , (콤마)가 나타납니다.

 

위와 같은 데이터에서 마지막에 콤마를 없앨려고

 

RTRIM을 사용해봤지만 콤마가 안없어집니다.

 

RTRIM(CONCAT_WS(',',컬럼1,컬럼2,컬럼3), ',') <- 이렇게 진행을 해도

위와 같이 데이터가 출력이 됩니다.

141,1421,1422,1420,

 

이상하게 SELECT RTRIM('141,1421,1422,1420,', ',') FROM db_root  

해당 쿼리로 테스트를 하면 ,(콤마)가 사라지는데 

 

 

RTRIM(CONCAT_WS(',',컬럼1,컬럼2,컬럼3), ',') <- 이렇게 하면 콤마가 안사라지는지 이해가 되지않네요

아니면 다른 방법이 있는지 답변 부탁드리겠습니다.

 

 

  • ?
    민순 2021.03.19 14:15

    오라클 형식의 쿼리를 보면, 마지막 글자 하나를 값과 무관하게 지우는 방식인 것 같습니다.

    즉 데이터가 모두 마지막에 ,(콤마)가 붙어서 나오는 상황인 것 같습니다.

    RTRIM 함수를 활용해 보시기 바랍니다.

    SELECT RTRIM('141,1421,1422,1420,' , ',') ;

    와 같은 형식으로 사용하시면 될 것 같습니다.

    다만 위와 같이 RTRIM 함수를 사용할 경우, 데이터에 마지막에 나오는 모든 ,(콤마)를 삭제하게 됩니다.

    예) SELECT RTRIM('1124,1212,,,,' , ',' ); -> 1124.1212

    RTRIM 함수에 대한 자세한 내용은 아래 메뉴얼을 참고하시기 바랍니다.

    https://www.cubrid.org/manual/ko/11.0/sql/function/string_fn.html#rtrim

  • ?
    테스형2 2021.03.19 14:20
    답변 감사합니다.
    한가지만 더 물어봐도 될까요?
    제가 내용을 급하게 수정하였는데
    확인을 못하신거 같아서 댓글을 남겨요

    SELECT RTRIM('141,1421,1422,1420,', ',') FROM db_root 이렇게 쿼리를 날려보면
    제대로 콤마가 없어진것을 확인을 하였는데
    이상하게
    RTRIM(CONCAT_WS(',',컬럼1,컬럼2,컬럼3), ',') CONCAT_WS와 같이 쓰면 안나오더라고여...
    혹시 이점에 대해서 답변 부탁드려도될까요??
  • ?
    민순 2021.03.19 14:44

    먼저 CONCAT_WS 함수는 첫번째 인자를 구분자로 사용하여 문자열을 연결하는 함수입니다.

    SELECT CONCAT_WS(',', 'abc', 'def', 'ghi') 쿼리를 실행할 경우 각 문자열을 ,(콤마)로 구분한

    abc,def,ghi 가 반환이 됩니다.

    만약 CONCAT_WS 함수를 사용했을때 결과 값 마지막에 ,(콤마)가 붙은 경우라면 CONCAT_WS 인자의 마지막 데이터가 ,(콤마)로 끝나는 것으로 보여집니다.

    예) SELECT CONCAT_WS(',', 'abc', 'def', 'ghi,') 수행 시 abc,def,ghi, 반환

    이 경우에도 RTRIM 함수를 이용하면 정상적으로 ,(콤마)가 사라지는 것을 테스트 결과 확인했습니다.

    SELECT RTRIM(CONCAT_WS(',', 'abc', 'def', 'ghi,'), ',');

    다시 한번 확인 부탁드립니다.

  • ?
    권호일 2021.03.19 14:44
    사내에서 작성한데로 "RTRIM(CONCAT_WS(',',컬럼1,컬럼2,컬럼3), ',')" 테스트 할 경우 정상적으로 변환됩니다.

    컬럼3의 value가 "ABC, "와 같이 ","값과 스페이스가 있는 경우에는 변환이 안 됩니다.

    컬럼3의 값의 끝자리 공백을 지우는 것으로 확인 해 주세요.

    예시)
    "RTRIM(CONCAT_WS(',',컬럼1,컬럼2, rtrim(컬럼3)), ',')"
  • ?
    테스형2 2021.03.19 14:49
    답변 달아주신 모든 분들 너무 감사합니다.
    덕분에 처리가 잘되었습니다. 감사합니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 53
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4459
855 최근 등록/수정 여부 추출 1 살려주세요 2017.02.01 11615
854 최신 HP-Unix에 큐브리드 커널설정하기 1 그림자 2012.05.11 12183
853 최신 설치 메뉴얼 1 하하보이 2010.12.09 7792
852 최신 큐브리드 버전 매니저프로그램 사용불가 관련.. 4 심판짱 2014.03.19 7332
851 추가문의 드립니다 1 dgr 2014.07.17 4986
850 추가문의가 있는 경우, 새 글을 적는게 좋을까요, 기존 글에 댓글 다는게 좋을까요? 2 키롱 2022.11.16 40
849 카스및 브로커 좀비프로세스? 1 라면 2016.04.01 9144
848 칼럼에 텍스트 입력하기 질문합니다 1 나이즈 2016.07.05 9365
847 캐릭터 셋 및 한글 입력 관련 질문 드립니다. 1 댄디 2013.02.18 8138
846 캐릭터셋 또는 락 문제? 8 secret 달콤한후치 2014.07.10 632
845 커넥션 유지 관련 2 구름마음 2013.07.05 10565
844 컬럼 COMMENT 추가할 수 있는 방법이 있을까요 7 잉여개발자 2018.04.03 2616
843 컬럼 데이터타입 수정 문의 2 지렸당께 2011.12.05 10537
842 컬럼 설명 입력시 오류발생 1 file 이쭌 2013.07.05 10317
841 컬럼 수정이 안됩니다. 1 초보 2010.02.04 13021
840 컬럼 순서에 따른 쿼리 오류 발생 3 file 워리파파 2021.10.22 162
839 컬럼 정보 수정 방법 3 jeinhe 2022.03.28 367
838 컬럼 종류 1 file 소라게 2013.02.14 6184
837 컬럼 코멘트 관련해 문의 드립니다. 3 워리파파 2020.08.12 1033
836 컬럼 코멘트 입력 3 그리피 2019.12.09 2570
Board Pagination Prev 1 ... 153 154 155 156 157 158 159 160 161 162 ... 200 Next
/ 200

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales