Oracle에서는 문자열은 ||을 사용하여 합치면 된다.
예시
select ('2021-01-01' || ' ~ ' || '2021-01-02') as resultDate from dual;
MySQL은 CONCAT함수를 사용하여 합쳐야 한다
예시
select concat('2021-01-01','2021-01-02') as resultDate from dual;
추가적으로 MySQL은 CONCAT_WS([구분자], [인자값1], [인자값2], [인자값3],...)의 함수도 존재한다.
예시
select concat_ws(' ','서울특별시','중구','세종대로') as result from dual;
Oracle에서도 CONCAT함수를 제공한다. 그러나 인자값을 2개만 쓸 수 있으므로 불편한 상황이 발생한다.
예를 들면, 기존 SQL에 내용을 추가하게 될 때, 아래 예시 같이 쿼리의 가독성이 떨어지게 된다.
따라서, 몇 번의 추가적인 내용이 더 생기게 된다면 쿼리가 무엇을 합치려는지 쉽게 알 수가 없기 때문에 CONCAT함수보다는 ||의 사용을 더 선호한다.
예시
SELECT CONCAT('서울시','중구') FROM DUAL;
SELECT CONCAT(CONCAT('서울시','중구'),'세종대로') FROM DUAL;
'데이터베이스' 카테고리의 다른 글
[SQL]DBMS에 따른 테이블 확인 (0) | 2021.01.18 |
---|---|
[SQL]Oracle 인덱스 용량 계산 (0) | 2021.01.14 |
[SQL] 정규식을 사용한 Select 조회 (0) | 2021.01.13 |
[SQL] 기본 SQL (0) | 2021.01.11 |
[SQL] 매주 특정 요일의 날짜를 SQL로 계산하기 (0) | 2020.12.23 |