반응형
🥳 Replace, Substr, Concat
- Replace - 특정한 컬럼의 값을 바꿀 수 있다.replace(바꿀 컬럼, 현재 값, 바꿀 값)
select pay_type,
replace(pay_type, 'card', '카드') Card_to_Korean
from payments
- Substr - 특정 문자만 골라서 조회할 수 있다.
substr(조회할 칼럼, 시작 위치, 글자 수)
select addr,
substr(addr, 1, 2)
from food_orders
food_orders칼럼에서 주소인 addr의 값을 첫번째 부터 두개의 글만 남긴다.
- Concat - 여러 칼럼의 값을 하나로 합칠 수 있는 기능이다.
concat(붙이고 싶은 값1, 붙이고 싶은 값2, 붙이고 싶은 값3, ...)
select restaurant_name "원래 이름",
addr "원래 주소",
concat('[',substr(addr, 1, 2),']', restaurant_name) "바뀐 이름"
from food_orders
where addr like '%서울%'
food_orders칼럼에서 대괄호 안에 주소의 두글자를 뽑아내고, restaurant_name과 합쳐준다.
🥳 IF, CASE
if - 조건에 맞는 값을 조회할 수 있다.
select pay_type,
if(pay_type='card', '카드', '현금') "결제타입"
from payments
pay_type이 'card'라는 조건이 맞으면 '카드'로 표시하고, 아니면 '현금'으로 표시한다.
case - 경우수가 많을 때, case문을 사용한다.
when절의 값이 맞으면 then을 실행한다.
select order_id,
restaurant_name,
day_of_the_week,
delivery_time,
case when day_of_the_week='Weekday' and delivery_time>=25 then 'Late'
when day_of_the_week='Weekend' and delivery_time>=30 then 'Late'
else 'On-time' end "지연여부"
from food_orders
food_orders칼럼에서 order_id, restaurant_name, day_of_the_week, delivery_time과 함께 day_of_the_week를 조회하는데, 'weekday'의 경우와 delivery_time이 25이상이면 'Late'로 표시한다. 또한, 'weekend'의 경우와delivery_time 30이상이면 'Late'를 표시한다. 두 조건에 맞지 않는 나머지는 'On-time'으로 표시한다.
반응형
'TIL' 카테고리의 다른 글
[TIL] 스코프 (Scope) (1) | 2024.01.02 |
---|---|
[TIL] 자바스크립트 기본 문법 숙제 (1) | 2023.12.29 |
[TIL] SQL과 기본쿼리 3 (1) | 2023.12.27 |
[TIL] SQL과 기본 쿼리 (1) | 2023.12.22 |
[TIL] 자바스크립트와 제이쿼리 (2) | 2023.12.21 |
댓글