SQL의 다양한 함수
문자열 함수
문자열 함수는 문자열 데이터를 조작하거나 분석하는 데 사용해요. 예를 들어, 문자열을 자르거나, 길이를 측정하거나, 특정 문자를 찾는 데 사용돼요.
CONCAT
설명: 여러 문자열을 하나로 합쳐요. 예제: 사용자의 전체 이름을 생성하는 코드예요.
1
2
SELECT CONCAT(first_name, ' ', last_name) AS full_name
FROM employees;
CONCAT(first_name, ‘ ‘, last_name): first_name과 last_name을 합쳐서 전체 이름을 만들어요.
SUBSTRING
설명: 문자열의 일부를 추출해요. 예제: 직무를 첫 글자 3개만 추출하는 코드예요.
1
2
SELECT SUBSTRING(position, 1, 3) AS short_position
FROM employees;
SUBSTRING(position, 1, 3): position 문자열의 첫 번째 문자부터 시작하여 3개의 문자를 추출해요.
LENGTH
설명: 문자열의 길이를 측정해요. 예제: 직원 이름의 길이를 계산하는 코드예요.
1
2
SELECT name, LENGTH(name) AS name_length
FROM employees;
LENGTH(name): name 문자열의 길이를 반환해요.
숫자 함수
숫자 함수는 숫자 데이터를 조작하거나 분석하는 데 사용해요. 예를 들어, 숫자의 절대값을 구하거나, 소수점을 반올림하거나, 최대값을 찾는 데 사용돼요.
ROUND
설명: 숫자를 지정한 소수점 자리까지 반올림해요. 예제: 급여를 소수점 첫째 자리까지 반올림하는 코드예요.
1
2
SELECT name, ROUND(salary, 1) AS rounded_salary
FROM employees;
ROUND(salary, 1): salary를 소수점 첫째 자리까지 반올림해요.
ABS
설명: 숫자의 절대값을 구해요. 예제: 잔액의 절대값을 계산하는 코드예요.
1
2
SELECT account_number, ABS(balance) AS absolute_balance
FROM accounts;
ABS(balance): balance의 절대값을 반환해요.
MAX
설명: 숫자 데이터 중에서 가장 큰 값을 찾아요. 예제: 직원들 중에서 가장 높은 급여를 찾는 코드예요.
1
2
SELECT MAX(salary) AS highest_salary
FROM employees;
MAX(salary): salary 컬럼에서 가장 높은 값을 반환해요.
날짜 / 시간 함수
설명: 날짜와 시간 함수는 날짜와 시간 데이터를 조작하거나 분석하는 데 사용해요. 예를 들어, 현재 날짜를 구하거나 두 날짜 간의 차이를 계산하는 데 사용됩니다.
NOW
설명: 현재 날짜와 시간을 반환해요. 예제: 현재 시스템 날짜와 시간을 조회하는 코드예요.
1
SELECT NOW() AS current_datetime;
NOW(): 현재 시스템의 날짜와 시간을 반환해요.
DATEDIFF
설명: 두 날짜 사이의 차이를 일(day) 단위로 계산해요. 예제: 주문 날짜와 현재 날짜 간의 차이를 계산하는 코드예요.
1
2
SELECT order_id, DATEDIFF(NOW(), order_date) AS days_since_order
FROM orders;
DATEDIFF(NOW(), order_date): order_date와 현재 날짜 사이의 일수 차이를 계산해요.
DATE_FORMAT
설명: 날짜를 지정된 형식으로 포맷해요. 예제: 주문 날짜를 ‘YYYY-MM-DD’ 형식으로 표시하는 코드예요.
1
2
SELECT order_id, DATE_FORMAT(order_date, '%Y-%m-%d') AS formatted_order_date
FROM orders;
DATE_FORMAT(order_date, ‘%Y-%m-%d’): order_date를 ‘YYYY-MM-DD’ 형식으로 포맷해요.