데이터 가공하기 - 문자 데이터
1. REPLACE : 기존의 데이터 값 중 일부만 다른 이름으로 대체 하는 경우 사용
SELECT REPLACE(컬럼명, 기존값, 변경값)
FROM 테이블명
2. SUBSTR : 엑셀에서 left, right 함수와 유사. 기존의 데이터 값에서 몇 글자만 추출하고 싶은 경우
SELECT SUBSTR(조회 할 컬럼명, 시작 위치, 글자 수)
FROM 테이블명
3. CONCAT : 기호도 추가하고 이름도 바꾸고 기존 이름도 사용하고 여러가지로 사용이 가능함
컬럼, 한글, 영어, 숫자, 기타 특수문자 모두 붙일 수 있으나, 한글과 특수문자 사용 시에는 따옴표('') 필수
# CONCAT
SELECT CONCAT[붙이고 싶은 값1, 2, 3, 4, ......]
FROM TABLE
#[지역명] RESTAURANT_NAME으로 형태로 변수를 만들고 싶을 때
SELECT CONCAT('[','SUBSTRING(ADDR,1,2),']',restaurant_name) "음식점 이름"
FROM TABLE
4. IF : 흔히 엑셀에서 사용하는 if 함수와 동일함
if 함수 안에도 다양한 함수 사용 가능 ex) replace, substr 등
다른 함수 사용 시에도, if 함수 사용 가능
#기본 구조
SELECT IF(조건, 조건 충족 시 값, 조건 미 충족 시 값)
FROM 테이블명
#활용
SELECT SUBSTRING(IF(EMAIL LIKE '%GAMIL%', REPLACE(EMAIL, 'GMAIL', '@gamil'),email),10)
5. CASE WHEN : if와 유사한 기능으로, 여러 개의 조건으로 행의 값을 변경하고 싶을 때 사용함
SELECT CASE WHEN 조건1 THEN 조건1에 부합할 때의 값(수식)
WHEN 조건2 THEN 조건2에 부합할 때의 값(수식)
ELSE 위 조건에 부합하지 않을 때 값(수식) END "새로운 변수명"
6. CAST : 데이터 형식(숫자, 문자 등) 변경해주는 함수. 숫자 또는 문자 형식으로 변경 가능
#숫자로 변경
cast(rating as decimal)
#문자로 변경
cast(order_id as char)
'SQL > 기본 지식' 카테고리의 다른 글
[엑셀보다 쉽고 빠른 SQL] - 5주차 (PIVOT, WINDOW) (0) | 2024.08.08 |
---|---|
[엑셀보다 쉽고 빠른 SQL] - 4주차 (서브쿼리, JOIN, UNION) (0) | 2024.08.07 |
[엑셀보다 쉽고 빠른 SQL] - 2주차 (Sum, Avg, Count, Distinct, Min, Max, Group By, Order By) (0) | 2024.08.07 |
[엑셀보다 쉽고 빠른 SQL] - 1주차 (SELECT, FROM, AS, WHERE, 비교연산자, Between, In, Like, And, Or, Not) (0) | 2024.08.07 |
[MySQL] 중복 제거하기 - DISTINCT, GROUP BY (0) | 2024.07.22 |