집 >데이터 베이스 >MySQL 튜토리얼 >두 개의 SELECT 쿼리를 결합하여 각 개인의 작업 및 지연 작업을 계산하는 방법은 무엇입니까?
종합적인 작업 분석을 위한 SELECT 쿼리 결합
데이터베이스 쿼리에서는 완전한 그림을 위해 여러 소스의 데이터를 결합해야 하는 경우가 많습니다. 여기에는 여러 SELECT
문의 결과를 결합하는 작업이 포함됩니다. 이는 많은 프로그래밍 상황에서 중요한 기술입니다.
마감일과 개별 할당이 포함된 작업 데이터베이스와 관련된 시나리오를 생각해 보세요. 목표는 각 개인, 총 작업 수, 기한이 지난 작업 수를 보여주는 보고서를 생성하는 것입니다.
이는 두 개의 별도 SELECT
쿼리를 사용하여 달성할 수 있습니다. 하나는 개인별 작업을 계산하는 것이고 다른 하나는 기한이 지난 작업을 계산하는 것입니다(Age
가 사전 정의된 기한을 초과하는 경우 PALT
). 이 정보를 통합하기 위해 LEFT JOIN
가 사용됩니다. 이렇게 하면 두 번째 쿼리의 일치하는 기한이 지난 작업 수와 함께 첫 번째 쿼리의 모든 개인이 포함됩니다. 조인은 ks
열(개별 식별자)을 기반으로 합니다.
결합된 쿼리는 다음과 같습니다.
<code class="language-sql">SELECT t1.ks, t1.[# Tasks], COALESCE(t2.[# Late], 0) AS [# Late] FROM (SELECT ks, COUNT(*) AS '# Tasks' FROM Table GROUP BY ks) t1 LEFT JOIN (SELECT ks, COUNT(*) AS '# Late' FROM Table WHERE Age > Palt GROUP BY ks) t2 ON t1.ks = t2.ks;</code>
출력은 각 개인의 ks
, 총 작업 수(# Tasks
) 및 기한이 지난 작업 수(# Late
)를 나열하는 테이블입니다. COALESCE
은 개인에게 기한이 지난 작업이 없는 경우를 처리하며 0
에 # Late
값을 할당합니다. 이는 포괄적이고 정확한 요약을 제공합니다.
위 내용은 두 개의 SELECT 쿼리를 결합하여 각 개인의 작업 및 지연 작업을 계산하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!