데이터 분석가가 자주 사용하는 5가지 SQL 함수

SQL 쿼리를 작성하다 보면
특정 함수들을 다른 함수들보다 더 자주 그리고 많이 사용하는 경우가 있습니다.

제가 데이터 분석가로 근무할 때 특히 많이 사용하던 5가지 함수가 있었는데요.
5가지 함수를 간단한 설명과 예시 코드와 함께 알아봅시다.

1. LOWER() / UPPER() 함수

문자형 데이터 형태를 통일시킬 때 사용하는 함수입니다.
검색하고자하는 열의 데이터가 소문자와 대문자가 복잡하게 혼합되어 있을 때, 문자를 모두 대문자 또는 소문자로 바꾸어서 쉽게 검색할수 있습니다.

예시)
SELECT country
FROM location
WHERE LOWER(country) = 'united state'

2. REPLACE() / SUBSTRING() 함수

문자형 데이터 일부분을 변환하거나 교체할 때 사용하는 함수입니다.
특수 문자를 제거하거나 또는 특정 패턴을 따르는 문자를 변형하고자 할때 자주 사용하던 함수입니다.

예시)
SELECT REPLACE('SQL-Tutorial','-',' ','')
FROM tutorials

3. CAST()/ CONVERT() 함수


숫자형 데이터 타입을 문자형으로 바꾸거나 날짜/시간 형으로 바꿀 때, 또는 반대의 경우에 자주 사용하던 함수입니다. 주로 새로운 타입의 열을 만들거나 또는 다양한 열들을 조합하여 하나의 열을 만들 때 사용하던 함수입니다.

예시)
SELECT 
CAST(YEAR(BirthDate) AS VARCHAR(4)) + '-' +
CAST(MONTH(BirthDate) AS VARCHAR(2)) + '-' +
CAST(DAY(BirthDate) AS VARCHAR(2)) AS brithdate_full
FROM customer

4. CASE WHEN()/DECODE() 함수


상황과 조건에 맞추어 여러가지 값을 도출해 낼수 있는 함수입니다.
특히 특정 조건을 필터링하여 합계를 계산하거나, 범위에 따라 서로 다른 이름을 붙여줄 때 자주 사용하던 함수입니다.

예시)
SELECT CASE
WHEN Price > 1,000,000 THEN  “expensive”
WHEN Price > 100,000    THEN   “moderate”
ELSE   “cheap”
END AS   condition
FROM     Product

5. NVL() / IFNULL() 함수


데이터의 값이 NULL일 때 (존재하지 않을 때), 데이터를 제외하거나 또는 다른 값으로 대체하고자 할 때 자주 사용했던 함수입니다. 데이터는 온전할 때보다 온전하지 않을 때가 훨씬 많기 때문에 이 함수들로 데이터를 전처리하곤 했었습니다.

예시)
SELECT name,
SUM(NVL(salary,0)) AS salary_sum
FROM employee
GROUP BY name

더 많은 함수들이 있지만,
지금 기억나는 것은 이정도네요.

데이터 탐험가 여러분들이 자주 사용하던 함수는 어떤 것이 있나요?

#데이터리차드 #데이터분석 #SQL

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2024년 1월 8일 오전 12:46

 • 

저장 18조회 1,697

댓글 0