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
더 많은 함수들이 있지만,
지금 기억나는 것은 이정도네요.
데이터 탐험가 여러분들이 자주 사용하던 함수는 어떤 것이 있나요?
아래의 버튼을 클릭하면 더 많은 데이터 & AI를 학습할수 있습니다.