본문 바로가기
IT

데이터베이스 기초와 실습 엑세스 2010(1)

by Diligejy 2015. 11. 22.

p.160

 

쿼리(Query)는 테이블에 저장된 데이터에서 조건에 맞는 데이터를 검색하여 그 결과를 표시해주는 엑세스 개체다.

 

p.160

쿼리로 검색할 대상이 되는 테이블 혹은 쿼리를 데이터 원본이라 한다.

데이터 원본은 하나 이상의 테이블 개체나 다른 쿼리 개체 혹은 이 둘의 조합이 될 수도 있다. 그리고 쿼리 개체도 폼이나 보고서에서 테이블과 함께 데이터 원본으로 활용된다.

 

여러 테이블에 저장된 정보를 사용자가 다양한 조건으로 검색하고, 특정 조건에 맞게 변경하거나 삭제할 수 있다는 것이 쿼리의 장점이다.

 

p.161

액세스의 쿼리 유형에는 선택 쿼리, 매개 변수 쿼리, 크로스탭 쿼리, 실행 쿼리가 있다.

 

p.161

선택 쿼리는 가장 일반적인 형태로, 하나 이상의 테이블이나 다른 쿼리에서 조건에 맞는 데이터를 검색해 원하는 순서대로 보여 준다.

 

p.161

매개 변수는 쿼리는 사용자가 대화 상자에 검색 조건을 직접 입력하는 쿼리 방법이다.

 

p.162

크로스탭 쿼리는 검색 결과를 쉽게 분석할 수 있도록 그룹화하거나 요약 합계 기능을 사용해 재구성한다.

 

p.162

실행 쿼리는 레코드를 변경, 삭제, 추가하는 쿼리인데, 다른 테이블에서 레코드를 가져와 새 테이블을 생성하는 쿼리도 여기에 해당한다.

 

p.167

단순 쿼리는 검색 결과를 보여 주는 방법에 따라 상세 쿼리와 요약 쿼리로 나뉜다. 검색 조건에 맞는 결과 레코드를 각각 하나의 행으로 표시하는 방법이 상세 쿼리고, 레코드를 묶어 (그룹화) 합계, 개수, 평균 등 요약 계산의 결과를 표시하는 방법이 요약 쿼리다.

 

p.181

쿼리 마법사로 실행이 불가능한 경우는 다음과 같다.

1. 검색 조건이 있는 경우 혹은 사용자로부터 값을 입력받아 검색 조건으로 사용하는 경우(매개 변수 쿼리)

2. 여러 필드를 이용한 계산식이 결과에 나와야 하는 경우

3. 테이블을 생성하거나 데이터를 추가, 변경, 삭제하는 작업(실행 쿼리)를 해야 하는 경우등이다.

 

p.194

 

-테이블 만들기 쿼리

하나 이상의 테이블에서 데이터의 일부나 전체를 가져와 새 테이블을 만들 수 있다. 다른 데이터베이스로 테이블을 복사하거나 데이터베이스 장애로 인해 시스템을 복구할 때 필요한 로그 데이터 저장용 테이블을 만들 때 유용하게 사용된다.

 

-업데이트 쿼리

하나 이상의 테이블에서 여러 레코드를 일괄적으로 변경할 수 있다. 예를 들어, 인터넷 서점 데이터베이스의 모든 도서를 10% 추가 할인해 도서 할인율 필드의 값을 모두 변경할 때 사용할 수 있다.

 

-추가 쿼리

하나 이상의 테이블에서 여러 레코드를 가져와 다른 테이블에 추가할 수 있다. 예를 들어, 새로운 도서들이 다량 입고되고 해당 도서에 대한 정보가 다른 테이블에 이미 저장되어 있다면, 기존 도서 테이블에 데이터를 일일이 입력하지 않고 추가 쿼리를 이용해 새로운 도서 정보를 추가할 수 있다.

 

-삭제 쿼리

하나 이상의 테이블에서 여러 레코드를 삭제할 수 있다. 예를 들어, 재고가 없고 주문이 들어오지 않는 도서 정보를 도서 테이블에서 일괄 삭제하는 경우에 이용할 수 있다. 

 

p.209

SQL 구문을 작성할 때는 다음과 같은 사항을 주의해야 한다.

 

대소문자를 구별하지 않는다.

한 줄이나 여러 줄로 나누어 입력할 수 있다.

코드를 읽기 편하도록 들여쓰기하는 것이 좋다.

문장 끝에 세미콜론(;)을 적어야 하나, 엑세스에서는 생략 가능하다.

 

p.220

SELECT 문

 

데이터 검색에 사용되는 SELECT 문의 형식은 다음과 같다.

 

SELECT 필드명1 [, ..., 필드명n]

[FROM 테이블명1 [, ..., 테이블명n]

[WHERE <조건식>]

[GROUP BY 필드명1 [, ..., 필드명n]

[HAVING <조건식>]

[ORDER BY 필드명1 [, ..., 필드명n] [ASC \ DESC]];

 

SELECT문은 여러 개의 절로 구성되며, 각 절을 순서대로 나열해야 한다. 하지만 검색 조건에 따라 필요 없는 절은 생략할 수 있다.

 

p.225

SUM() 그룹의 합계를 구함

AVG() 그룹의 평균을 구함

COUNT() 레코드의 개수를 구함

 

p.225~226

집계 함수는 테이블 내의 전체 레코드에 적용할 수 있으나, 대개 SELECT문의 GROUP BY 절로 지정하는 그룹에서 사용한다.

 

그리고 지정한 그룹에 대해 검색 조건이 있으면 HAVING 절이 추가되어 조건식을 입력한다.

 

p.230

SELECT  도서명, SUM(주문내역.수량) AS 주문수량, SUM(금액) AS 주문금액
FROM    주문, 주문내역, 도서
WHERE   주문.주문번호 = 주문내역.주문번호
  AND    주문내역.제품코드 = 도서.제품코드
  AND    MONTH(주문일자) BETWEEN 1 AND 3
GROUP BY  도서명;

댓글