-
728x90반응형
DB2 Function
DB2에서 SQL 함수는 주로 데이터 조작 및 데이터베이스 관리에 활용되는 다양한 기능을 제공합니다. 이러한 함수들은 SQL을 통해 데이터베이스에 질의를 실행하거나 데이터를 변형하며, 복잡한 연산을 손쉽게 수행할 수 있도록 도와줍니다. 아래에서 DB2 SQL 함수의 주요 특징과 몇 가지 예를 자세히 설명드리겠습니다.
DB2 SQL 함수의 종류
- 집계 함수(Aggregate Functions):
집계 함수는 여러 행의 데이터를 하나의 값으로 집계하는 데 사용됩니다. 대표적으로 SUM, AVG, COUNT, MAX, MIN 등이 있습니다.- 예: SELECT AVG(salary) FROM employees;
- 이 쿼리는 employees 테이블에서 모든 직원의 평균 급여를 계산합니다.
- 예: SELECT AVG(salary) FROM employees;
- 스칼라 함수(Scalar Functions):
이러한 함수는 단일 값을 입력받아 단일 값을 반환합니다. 문자열 처리, 날짜 및 시간 처리, 수치 계산 등을 포함합니다.- 예: UPPER(name)은 주어진 문자열의 모든 문자를 대문자로 변환합니다.
- 예: CURRENT DATE는 현재 날짜를 반환합니다.
- 문자열 함수(String Functions):
문자열을 조작하는 데 유용한 함수들입니다. 문자열의 길이를 반환하거나, 특정 부분을 추출하는 등의 기능을 합니다.- 예: SUBSTR(name, 1, 3)는 name 필드의 첫 3자를 반환합니다.
- 날짜 및 시간 함수(Date and Time Functions):
날짜 및 시간 관련 연산을 수행할 수 있는 함수들로, 날짜를 추가하거나 날짜 간의 차이를 계산하는 데 사용됩니다.- 예: DAYS(CURRENT DATE) - DAYS(start_date)는 현재 날짜와 start_date 사이의 차이를 일 수로 반환합니다.
- NULL 함수:
NULL 값을 처리하기 위한 함수들입니다. COALESCE와 NULLIF 등이 이에 해당합니다.- 예: COALESCE(column1, column2, 'Default')는 column1이 NULL일 경우 column2의 값을 반환하고, 그마저도 NULL이면 'Default’를 반환합니다.
DB2 SQL 함수 사용 예
DB2에서의 SQL 함수 사용 예를 통해 어떻게 데이터를 조작할 수 있는지 보여드리겠습니다.
예제 1: 평균 급여 계산
SELECT AVG(salary) AS average_salary FROM employees;
이 쿼리는 employees 테이블의 모든 직원 급여의 평균을 계산하여 average_salary라는 이름으로 반환합니다.
예제 2: 특정 날짜로부터 7일 후의 날짜 계산
SELECT CURRENT DATE + 7 DAYS AS future_date FROM sysibm.sysdummy1;
이 쿼리는 현재 날짜에 7일을 추가한 값을 future_date로 반환합니다.
예제 3: NULL 처리
SELECT name, COALESCE(phone_number, 'No Phone') AS contact_info FROM customers;
customers 테이블에서 전화번호(phone_number)가 NULL인 경우 'No Phone’으로 출력하는 예제입니다.
결론
IBM DB2 SQL 함수는 데이터베이스를 효율적으로 다룰 수 있게 해주는 중요한 도구입니다. 다양한 종류의 함수들은 데이터 분석, 관리, 변형을 가능하게 하여 SQL 쿼리의 효율성을 높여줍니다. 필요에 따라 적절한 함수를 선택해 사용함으로써 더 나은 데이터 관리와 분석을 이끌어낼 수 있습니다. DB2를 활용하여 효과적으로 데이터베이스를 운영하고 그 가치를 최대한 활용할 수 있습니다.
728x90'IT > DB' 카테고리의 다른 글
ORACLE 실행지침서 (3) 2024.10.16 DB2 기초 (개요) (2) 2024.10.16 DBMS별 함수 비교 (4) 2024.10.15 DB2에서의 자동 증가 필드 (0) 2024.10.13 ORACLE 7.0 매뉴얼 (3) 2024.10.09 - 집계 함수(Aggregate Functions):