select restaurant_name "원래 상점명",
replace(restaurant_name, 'Blue', 'Pink') "바뀐 상점명"
from food_orders
where restaurant_name like '%Blue Ribbon%'
예제 코드에서의 활용은
"restaurant_name 컬럼에서 'blue' 를 모두 'pink' 로 바꿔라"
로 동작한다.
이전 이름에서 blue 가 모두 pink 로 바뀐 것을 확인할 수 있다.
사용 방법은 다음과 같다
replace (바꿀 컬럼, 현재 값, 바꿀 값)
SELECT addr "이전 주소",
REPLACE(addr, '문곡리', '문가리') "바뀐 주소"
FROM food_orders fo
WHERE addr LIKE '%문곡리%'
바꿀 컬럼 Addr 에서 현재 값인 '문곡리' 가 바꿀 값인 '문가리' 로 바뀐 모습을 볼 수 있다.
select addr "원래 주소",
substr(addr, 1, 2) "시도"
from food_orders
where addr like '%서울특별시%'
원래 주소에서 '시도' 로 서울 두글자만 조회한 모습이다.
특정한 문자만 뽑아주는 키워드
로서 동작한다.
사용 방법은 다음과 같다
substring (조회 컬럼, 시작 위치, 조회 글자 수)
위의 예시 코드
Substr(addr, 1, 2) 의 경우
addr에서 조회,
1번째 글자 부터 조회 시작
2개의 글자 수만 조회
로 받아들일 수 있다.
시작 위치는 정할 수 있지만, 해당 위치부터 글자 끝까지 조회해야 하는데 글자 수가 일정하지 않을 때
마지막 인자인 '조회 글자 수' 를 어떻게 적어야할지 애매하다.
이 때는 그냥 안적으면 된다.
substr(조회할 컬럼, 시작 위치)
이렇게만 작성해도 문제없이 동작하며, 시작 위치부터 해당 데이터의 마지막 글자 수까지 빠짐없이 조회한다.
select addr "원래 주소",
substr(addr, 3) "시도"
from food_orders
where addr like '%서울특별시%'
원하는 문자가 여러 컬럼이 있을 때, 하나로 합치고자 하는 경우 사용 가능하다
select restaurant_name "원래 이름",
addr "원래 주소",
concat('[', substring(addr, 1, 2), '] ', restaurant_name) "바뀐 이름"
from food_orders
where addr like '%서울%'
예제 코드에서의 concat 함수만 분리해서 보면 다음과 같다.
concat('[', substring(addr, 1, 2), '] ', restaurant_name)
substring 함수는 2번 항목에서 배운 글자 추출 키워드이다.
해당 결과로 '서울' 이 출력된 것을 알고 마저 키워드를 보면
특수 문자 ' [ ' 와 ' ] ' 로 substr 을 구분지어주고 새롭게 restaurant_name 컬럼명을 붙여주었다.
이 여러 데이터를 붙여 하나의 컬럼명으로 만드는 함수가 concat 함수이다.
사용 방법은 다음과 같다.
concat(붙이고 싶은 값1, 붙이고 싶은 값2, ... )
단순히 concat 함수의 인자로 붙이고 싶은 값들을 계속해서 넣어주면 된다.
붙일 수 있는 문자 종류로는
1. 컬럼
2. 한글
3. 영어
4. 숫자
5. 기타 특수 문자
가 있다.
한글이나 기타 특수 문자는 당연하게도 ' ' 작은 따옴표를 넣는 것을 잊지 말아야 한다.
CONCAT(restaurant_name, '-', cuisine_type) "음식타입 별 음식점",
새로 추가한 '음식 타입 별 음식점' 이 추가되고, 데이터에 원하는 대로 특수문자까지 정상적으로 포함된 모습이다.
#7. IF/CASE 문법 (3) | 2024.10.23 |
---|---|
#6. 문자 데이터 가공 실습 (2) | 2024.10.18 |
#4. 문제 풀이 - 주문 금액 조회 (0) | 2024.10.18 |
#3. 그룹 연산, 정렬, 구조 정리 (0) | 2024.10.11 |
#2. 에러(Error)에 대응하는 자세, 문제 풀이 (0) | 2024.10.11 |