결합된 SELECT 및 UNION 쿼리 결과 정렬
SELECT
을 사용하여 여러 UNION
쿼리를 결합하면 결과 데이터 세트를 정렬하는 방법이라는 공통 과제가 발생합니다. 이 문제와 해결 방법을 살펴보겠습니다.
도전
다양한 테이블에서 데이터를 검색하거나 SELECT
로 결합된 여러 UNION
문을 사용할 때 특정 열 정렬 순서를 달성하는 것이 까다로울 수 있습니다.
자세한 설명
다음 시나리오를 고려해보세요.
<code class="language-sql">SELECT id, name, age FROM Student WHERE age < 20 UNION SELECT id, name, age FROM Student WHERE age >= 20;</code>
이 쿼리는 Student
테이블 내의 서로 다른 두 그룹에서 데이터를 선택합니다. 그러나 ORDER BY name
문 내에 배치된 간단한 SELECT
절은 결합된 결과를 올바르게 정렬하지 않습니다.
솔루션
올바른 접근 방식은 ORDER BY
문 뒤에 UNION
절을 적용하는 것입니다. 다음 쿼리는 적절한 방법을 보여줍니다.
<code class="language-sql">SELECT id, name, age FROM Student WHERE age < 20 UNION SELECT id, name, age FROM Student WHERE age >= 20 ORDER BY name;</code>
이렇게 하면 ORDER BY
절이 UNION
작업으로 생성된 전체 데이터세트에서 작동하여 원하는 정렬 출력이 보장됩니다.
위 내용은 UNION과 결합된 여러 SELECT 쿼리의 결과를 정렬하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!