Background Image
조회 수 7253 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

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

여러개의 컬럼을 하나의 컬럼으로 묶을때 "||" 사용하여 하나로 묶어서 수행합니다.

그러나 이렇게 했을 때 컬럼에 들어가 있는 값이 NULL인 경우 결과 값이 NULL로 출력되는 현상이 있습니다.

왜냐하면 모든 값이 NULL로 연산 처리 시 NULL로 출력됩니다.

그래서 NVL함수를 사용하여 결과 출력을 합니다.

또한 CUBRID에서도 NVL함수를 사용할 수도 있고, 다른 함수를 사용할 수 있습니다.

CONCAT_WS함수를 사용하여 처리하는 방법을 알려드리겠습니다.


아래의 4가지 질의문을 보시고, 원하는 질의문을 작성하시면 됩니다.


CREATE TABLE T_TBL( id integer not null primary key

                                    , age integer 

                                    , name varchar(30)

                                   );


INSERT INTO T_TBL(id, age, name) values(1, 10, '홍길동'), (2, 15, '홍길동2'), (3, 16, NULL);


1) NVL함수 사용 질의문

    SELECT id, NVL(age,'') AS age, NVL(name,'') AS name FROM t_tbl;

    === <Result of SELECT Command in Line 1> ===

           id  age                   name               
    ===================================
            1  '10'                  '홍길동'        
            2  '15'                  '홍길동2'       
            3  '16'                  ''                 

     ===================================

2) 컬럼 끼리 묶을때 NVL함수 사용  질의문 ("||")

    SELECT id, NVL(age,'')||'/'||NVL(name,'') AS age_name FROM t_tbl;

    === <Result of SELECT Command in Line 1> ===

           id  age_name           
    ===================================
            1  '10/홍길동'     
            2  '15/홍길동2'    
            3  '16/'              

    ===================================


3) 컬럼 끼리 묶을때 CONCAT_WS함수 사용 질의문

    SELECT id, CONCAT_WS('', age, name) AS age_name FROM t_tbl;

    === <Result of SELECT Command in Line 1> ===

           id  age_name           
    ===================================
            1  '10홍길동'      
            2  '15홍길동2'     
            3  '16'     

    ===================================
 

4) 컬럼 끼리 묶을때 CONCAT_WS함수 사용 질의문

     -> 나이와 이름 사이에 "/" 넣고 싶을 때

    SELECT id, CONCAT_WS('/', age, name) AS age_name FROM t_tbl;

    === <Result of SELECT Command in Line 1> ===

           id  age_name           
    ===================================
            1  '10/홍길동'     
            2  '15/홍길동2'    
            3  '16'  

    ===================================


List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
239 마이그레이션 MySQL 테이블 크기 조사하기-공유 주현 2015.12.31 6206
238 운영관리 CUBRID BACKUP (linux, window) file 박동윤 2015.12.30 6249
237 질의작성 Cubrid는 어떤 쿼리를 동일한 쿼리로 판단할까? 이상신 2015.12.30 4011
236 운영관리 브로커와 DB 간 연결 테스트 박동윤 2015.12.29 4934
235 응용개발 CUBRID HA 제약 사항 및 확인 방법 손승일 2015.12.29 5305
234 운영관리 cubrid plandump ( plan cache정보확인) file 주현 2015.12.29 4300
233 마이그레이션 CUBRID와 Oracle의 NULL과 '' (empty string)의 처리 차이점 1 권호일 2015.12.29 15430
232 마이그레이션 CM(CUBRID Manager)을 이용하여 행정표준코드시스템의 기관코드 가져오기 file 권호일 2015.12.28 6329
231 CUBRID 매니저 테이블 명세서 한 시트로 합치기 file 성진 2015.12.24 16528
230 질의작성 일정 범위 임의의 정수 생성 방법(random 함수 응용) 손승일 2015.12.22 6472
229 운영관리 시스템 부하가 많지 않음에도 불구하고 질의 수행이 느린 경우 THP 기능 설정 확인 및 해제 진우진 2015.12.16 7529
228 운영관리 큐브리드 서비스 재구동 시 cubrid manager server start: fail 오류 해결 방법 진우진 2015.12.16 7735
227 응용개발 maven에서 CUBRID JDBC Driver 추가하기 file 김승훈 2015.12.09 8947
226 질의작성 오라클의 DBMS_RANDOM.STRING() 함수를 CUBRID 식으로 구현하는 방법 이경오 2015.12.08 7974
225 질의작성 테이블 용량 산정 쿼리 성진 2015.12.08 7398
224 응용개발 WHERE 조건에서 다중 컬럼 IN절 처리 최적화 방법 (cubrid + ibatis) 1 이상신 2015.08.21 55143
223 운영관리 브로커 동적 파라미터 변경 방법 정만영 2015.08.13 7566
222 질의작성 전체 테이블 UPDATE시 SELECT, UPDATE를 통한 INDEX SCAN방식으로 테이블 X_LOCK을 방지하자! file 이경오 2015.08.13 13802
221 운영관리 CUBRID HA 구성 후 구동중인 slave/replica node에서 write 하기 정만영 2015.07.15 9044
220 질의작성 INSERT수행 시, 현재날짜,현재시각으로 자동 입력하는 방법 주현 2015.07.08 25218
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 14 Next
/ 14

Contact Cubrid

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