수색…
Access SQL 소개
Access를 사용할 때 쿼리를 사용하여 데이터를 검색 할 수 있습니다. 이러한 쿼리는 SQL (Structured Query Language)을 사용하여 작성됩니다. SQL을 이해하면 더 유용하고 유용한 쿼리를 작성하는 데 도움이되므로 중요합니다.
Access에서 쿼리를 만들 때 "SQL View"로 전환 할 수 있습니다. "선택"쿼리의 예가 여기에 표시됩니다.
통합 (병합) 쿼리
관계형 조인을 수행하지 않고 유사한 필드가있는 여러 테이블 또는 쿼리의 결과를 하나의 결과 데이터 세트로 결합하려는 경우 (즉, 다른 하나의 데이터 세트를 즉시 나열하려는 경우) UNION 쿼리를 사용합니다. 그러나 이러한 쿼리는 SQL보기에서 수동으로 만들어야합니다.
UNION 쿼리의 구문은 다음과 같습니다.
SELECT
floatingpoint_field AS floatptfld,
text_field
FROM first_table
UNION
SELECT
integer_field,
decimal_field
FROM a_saved_query
UNION
SELECT
1.0,
"hi there Jack"
필드 (열) 이름을 가진 2 필드 데이터 세트를 반환합니다 : floatptfld 및 text_field
나중에 병합 된 테이블 필드의 데이터 형식 (및 데이터 형식)이 계열의 첫 번째 쿼리와 호환되는 것이 중요합니다. 즉, 첫 번째 SELECT 쿼리가 첫 번째 열의 숫자를 생성하면 두 번째 쿼리는 첫 번째 열의 숫자도 반환해야합니다. 순서대로 필드 유형을 일치시키는 것 외에도 SELECT 문은 동일한 수의 필드를 리턴해야합니다. 결과 데이터 시트의 필드 이름은 첫 번째 테이블 정의에서 상속됩니다.
텍스트를 십진수 데이터로 변환하거나 부동 소수점 숫자를 정수로 변환 할 수 없으므로 (명시 적 절단 또는 반올림 및 유형 변환없이) 다음 쿼리를 사용할 수 없습니다.
SELECT
integer_field AS this_really_wont_turn_out_well,
decimal_field
FROM a_saved_query
UNION
SELECT
floatingpoint_field,
text_field
FROM first_table
COUNT () 함수
COUNT () 함수를 사용하여 쿼리와 일치하는 레코드 수를 반환 할 수 있습니다. 다음 '직원'테이블에는 직원 ID 번호와 관련 관리자의 ID 번호가 들어 있습니다.
| Employee_ID | Manager_ID |
|---|---|
| 12 | 37 세 |
| 22 | 37 세 |
| 37 세 | 63 |
| 42 | 45 |
| 45 | 63 |
| 57 번 | 45 |
| 59 | 45 |
| 63 |
COUNT () 문을 사용하여 특정 관리자가있는 직원 수를 확인할 수 있습니다.
SELECT COUNT(*) AS CNT FROM Employees WHERE Employee.Manager_ID = 37;
보고
| CNT |
|---|
2
이 함수는 더 복잡한 쿼리에서도 결합 될 수 있습니다. 특정 인원이 직접 감독하는 직원 수를 확인하려면 다음을 적용 할 수 있습니다.
SELECT T1.Employee_ID,
(SELECT COUNT(*) AS CNT FROM Employees AS T2 WHERE T2.Manager_ID =
T1.Employee_ID) AS Supervised_Count
FROM Employees AS T1;
보고:
| Employee_ID | 감독 된 계정 |
|---|---|
| 12 | 0 |
| 22 | 0 |
| 37 세 | 2 |
| 42 | 0 |
| 45 | 삼 |
| 57 번 | 0 |
| 59 | 0 |
| 63 | 2 |
