[ 엑셀VBA 12 ] 불량관리 프로그램 만들기 - SQL 함수에 대하여 엑셀VBA 이야기2014. 12. 29. 11:38
[ 엑셀VBA 12 ] 불량관리 프로그램 만들기 - SQL 함수에 대하여
오늘은 SQL함수에 대하여 알아보고자 한다. 갑자기 이 시점에서 왜? SQL이냐면 엑셀을 DB로
해서 많은 용량의 데이터를 검색해서 조건을 추려 골라내고 계산을 하려면 DB전용 함수인
SQL 함수 + VBA가 필요하기 때문이다.
SQL이란 무엇인가?
SQL이란 구조화 질의어(Structured Query Language)의 줄임말이며, SQL은 DDL(데이터 정의 언어)과 DML(데이터 조작 언어) 명령으로 크게 나누어 볼 수 있다. DDL은 데이터베이스 개체 자체를 다루는 것으로, 새 데이터베이스를 만들거나, 필드 인데스를 작성하고 정의, 또는 삭제할 수 있으며 DML 명령을 사용해서 질의를 구성해 데이터베이스에서 우리가 원하는 데이터를 추출하거나 정렬하거나 삭제 또는 수정할 수 있다.
즉, SQL이란 데이터를 정의하거나 조작하는 데 사용하는 언어를 말하는 것이다.
SQL 절(절은 SQL 언어의 구성 요소)
절은 선택하거나 수정 또는 편집할 데이터를 정의할 때 사용하는 조건을 부여할 때 사용한다.
FROM : 데이터의 위치를 말하며 엑셀 고급필터에서 데이터가 들어 있는 목록 범위를 지정하는 것과 같다.
WHERE : 레코드가 선택되기 위해서 충족해야 하는 조건을 지정할 때 사용하며, 일반적으로 엑셀의 고급필터에서 조건 범위를 부여하는 것과 같다.
GROUP BY : 선택한 레코드를 특정 그룹으로 묶을때 사용한다.
HAVING : 그룹별로 만족될 조건을 지정할 때 사용
ORDER BY : 지정된 순서에 따라 선택된 레코드들을 오름차순 혹은 내림차순으로 정렬할 때 사용
SQL 명령(명령은 SQL 언어의 구성요소)
SQL 언어는 아주 단순한 몇 개의 명령으로 구성되어 있으며, 아래의 7가지가 가장 중요하다.
DDL 문
CREATE : 데이터베이스에서 새로운 무엇인가를 만들고 싶을 때 CREATE 문을 이용함.
DROP : 데이터베이스에서 테이블이나 인덱스 등 무엇인가를 삭제할 때 DROP 문을 사용함.
ALTER : 필드를 추가하거나 필드 정의를 변경할 때 사용함.
DML 문
SELECT : 특정 조건을 만족하는 데이터를 찾기 위해 데이터베이스에 질의할 때 사용함.
INSERT : 데이터를 데이터베이스에 한꺼번에 추가하려고 할 때 사용함.
UPDATE : 특정 레코드와 필드의 값을 변경할 때 사용함.
DELETE : 데이터베이스에서 레코드를 삭제할 때 사용함.
SQL 계산 함수(계산 함수는 SQL의 구성 요소 )
계산 함수는 레코드 그룹에 적용되는 단일 값을 반환하기 위해 레코드 그룹의 SELECT 절 안에서 사용함.
AVG : 평균을 구할 때 사용함.
COUNT : 레코드의 수를 구할 때 사용함.
SUM : 특정필드의 모든 값의 합계를 구할 때 사용함.
MAX : 특정필드에서 가장 큰 값(최대값)을 구할 때 사용함.
MIN : 특정필드에서 가장 작은 값(최소값)을 구할 때 사용함.
SQL 연산자 (연산자는 SQL 언어의 한 구성 요소)
SQL 연산자는 크게 논리 연산자와 비교 연산자의 두 종류로 나눌 수 있다.
논리 연산자 : 이 논리 연산자는 WHERE 절 안에서 식을 연결할 때 사용함.
AND : 두 가지 조건이 모두 만족할 때 참을 반환하며,아닌경우는 거짓을 반환한다.
OR : 두 가지 조건 가운데 어느 하나라도 만족하면 참을, 둘 다 만족하지 못하면 거짓을 반환한다.
NOT : 어떤 조건이 부정일 경우에만 참을 반환한다.
비교 연산자 : 비교연산자는 어떤 작업을 해야할 것인지 결정하기 위해 두 식의 상대 값을 비교할 때 사용함.
< 작다(미만)
<= 작거나 같다(이하)
> 크다(초과)
>= 크거나 같다(이상)
= 같다
<> 같지 않다
BETWEEN 두 범위 사이의 값
LIKE 패턴 매칭에 사용함.
IN 데이터베이스의 레코드를 지정할 때 사용함.
자 인제 위의 조건을 기본으로하여 엑셀 VBA을 활용한 불량관리 프로그램을 만들어 보도록 할 것이다.
불량율관리 프로그램 만들기 시리즈
'엑셀VBA 이야기' 카테고리의 다른 글
[ 엑셀VBA 13] 불량관리 프로그램 만들기 - SQL의 프로그램 적용하기 (0) | 2015.01.11 |
---|---|
[ 엑셀VBA 11 ] 불량관리 프로그램 만들기 - 데이터베이스 입력 행삽입 모듈 만들기 (0) | 2014.12.29 |
[ 엑셀VBA 10 ] 불량관리 프로그램 만들기 - 분석툴 만들기 (0) | 2014.12.26 |
[ 엑셀VBA 9 ] 불량관리 프로그램 만들기 - 엑셀 데이터베이스 사용 설정 (1) | 2014.12.21 |
[ 엑셀VBA 8 ] 불량관리 프로그램 만들기 - 이중 유효성검사 (0) | 2014.12.20 |