UNION을 사용하여 여러 MS 액세스 테이블의 데이터 결합 및 정렬
대규모 데이터베이스에서는 여러 테이블의 데이터를 결합하는 것이 일반적인 작업입니다. UNION
연산자는 여러 테이블의 행을 단일 결과 집합으로 병합하는 방법을 제공합니다. 그러나 이 결합된 데이터의 올바른 순서를 얻으려면 MS Access에서 특정한 접근 방식이 필요합니다.
이런 간단한 시도는 실패합니다.
SELECT table1.field1 FROM table1 ORDER BY table1.field1 UNION SELECT table2.field1 FROM table2 ORDER BY table2.field1
MS Access Jet 데이터베이스 엔진은 ORDER BY
쿼리 내에서 직접 UNION
절을 허용하지 않습니다.
해결책: 중첩 쿼리 및 별칭
해법은 각 개별 SELECT
문을 자체 하위 쿼리 내에 중첩한 다음 각 하위 쿼리 내에 ORDER BY
절을 적용하는 것입니다. 이를 위해서는 각 하위 쿼리에 별칭을 할당해야 합니다.
SELECT * FROM ( SELECT table1.field1 FROM table1 ORDER BY table1.field1 ) AS DUMMY_ALIAS1 UNION ALL SELECT * FROM ( SELECT table2.field1 FROM table2 ORDER BY table2.field1 ) AS DUMMY_ALIAS2
이 방법을 사용하면 table1
및 table2
에서 결합된 데이터의 올바른 순서를 지정할 수 있습니다. 중복을 제거하는 UNION ALL
과 달리 중복을 포함하여 두 쿼리의 모든 행을 포함하는 UNION
의 사용에 유의하세요. 필요에 따라 적절한 UNION
연산자를 선택하세요. 이 기술을 사용하면 MS Access에서 UNION
연산자를 사용하여 결합된 데이터를 효과적으로 정렬할 수 있습니다.
위 내용은 MS Access에서 UNION을 사용하여 여러 테이블의 데이터를 어떻게 주문할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!