프로그래밍/MySQL

여러 컬럼값을 연결해서 하나의 컬럼값으로 출력하기

에어버스 2016. 10. 22. 12:09

MySQL
여러 컬럼값을 연결해서 하나의 컬럼값으로 출력하기

(컬럼이름에 Num, svi_recprice, dvi_recprice, vi_trgprice 는 정수형, 그외는 문자형)

1
SELECT * FROM tblvi;
cs

<SQLite> CONCAT() 관련함수가 없음

1
2
3
4
SELECT 'VI_' as trno, shcode, (vi_gubun || ' ' || svi_recprice || ' ' 
|| dvi_recprice || ' ' || vi_trgprice || ' ' || shcode || ' ' || 
ref_shcode || ' ' || time1) as data, 
(ddate || ' ' || ttime) as ttime FROM tblvi_new where shcode = '084670';
cs

<MySQL> 문자열 연결시켜주는 CONCAT_WS, CONCAT() 함수 사용

1
2
3
SELECT 'VI_' as trno, shcode, CONCAT_WS(' ', (vi_gubun,svi_recprice,
dvi_recprice,vi_trgprice,shcode,ref_shcode,time1) as data, 
CONCAT(ddate,' ',ttime) as ttime FROM tblvi;
cs

숫자형, 문자열형 구분없이 연결된다.

참고, MySQL이 아닌 다른 DB에서는 컬럼 연결을 CONCAT() 를 사용하지 않고 '+', '||' 로 하는듯하고,
숫자형은 CAST(숫자컬럼 AS VARCHAR) 함수로 문자열로 변환해서 연결하는듯 함.