> 데이터 베이스 > MySQL 튜토리얼 > SQL 조인을 사용하여 개인의 작업 수와 지연 작업 수를 결합하는 방법은 무엇입니까?

SQL 조인을 사용하여 개인의 작업 수와 지연 작업 수를 결합하는 방법은 무엇입니까?

Barbara Streisand
풀어 주다: 2025-01-08 22:37:44
원래의
932명이 탐색했습니다.

How to Combine Task and Late Task Counts for Individuals Using SQL Joins?

여러 SQL 쿼리의 데이터 통합

데이터베이스 관리에는 다양한 소스나 테이블의 데이터를 통합해야 하는 경우가 많습니다. 일반적인 방법은 SQL JOIN 작업을 사용하여 여러 SELECT 문의 결과를 결합하는 것입니다.

이 예에서는 총 작업 수를 계산하는 쿼리와 각 개인의 기한이 지난 작업을 계산하는 쿼리의 데이터를 결합하는 방법을 보여줍니다. 각 개인의 작업 수와 기한이 지난 작업 수를 표시하는 테이블을 만드는 것이 목표입니다.

첫 번째 쿼리는 각 개인의 총 작업 수를 계산합니다.

<code class="language-sql">SELECT ks, COUNT(*) AS "Total Tasks" FROM Table GROUP BY ks</code>
로그인 후 복사

이렇게 하면 ks(개별 식별자) 및 Total Tasks이 포함된 테이블이 생성됩니다.

두 번째 쿼리는 각 개인의 기한이 지난 작업을 계산합니다.

<code class="language-sql">SELECT ks, COUNT(*) AS "Overdue Tasks" FROM Table WHERE Age > Palt GROUP BY ks</code>
로그인 후 복사

이렇게 하면 ksOverdue Tasks이 포함된 테이블이 생성됩니다.

이러한 결과를 병합하려면 LEFT JOIN을 사용합니다. 이렇게 하면 기한이 지난 작업이 없더라도 첫 번째 쿼리의 모든 개인이 포함됩니다.

결합된 쿼리는 다음과 같습니다.

<code class="language-sql">SELECT t1.ks, t1."Total Tasks", COALESCE(t2."Overdue Tasks", 0) AS "Overdue Tasks"
FROM 
    (SELECT ks, COUNT(*) AS "Total Tasks" FROM Table GROUP BY ks) t1
LEFT JOIN
    (SELECT ks, COUNT(*) AS "Overdue Tasks" FROM Table WHERE Age > Palt GROUP BY ks) t2
ON (t1.ks = t2.ks);</code>
로그인 후 복사

COALESCE은 개인이 기한이 지난 작업이 부족한 경우를 처리하며 NULL를 0으로 바꿉니다.

최종표에는 개인별로 ks, Total Tasks, Overdue Tasks이 표시됩니다.

위 내용은 SQL 조인을 사용하여 개인의 작업 수와 지연 작업 수를 결합하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿