>데이터 베이스 >MySQL 튜토리얼 >SQL 테이블을 병합하고 고유한 날짜 값을 보장하는 방법은 무엇입니까?

SQL 테이블을 병합하고 고유한 날짜 값을 보장하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-12-31 18:20:11780검색

How to Merge SQL Tables and Guarantee Unique Date Values?

SQL에서 테이블 병합 및 고유한 날짜 값 보장

날짜 값의 고유성을 보장하면서 두 테이블을 병합하려면 다음 접근 방식을 활용하세요.

  1. 유니언 올 투 하위 쿼리: Inbound 및 Outbound 테이블에서 데이터를 추출하려면 두 개의 하위 쿼리를 만듭니다. Inbound 하위 쿼리의 Quantity 열을 합산하고 Outbound 하위 쿼리의 OutboundType을 계산합니다.
  2. Union All로 결과 결합: UNION ALL 연산자를 사용하여 두 하위 쿼리의 결과를 결합합니다. 이렇게 하면 인바운드 및 아웃바운드 거래가 모두 포함된 단일 결과 집합이 생성됩니다.
  3. 날짜 및 제품별 그룹화: 날짜 및 제품 열을 다음과 같이 사용하여 결합된 결과 집합에 GROUP BY 연산자를 적용합니다. 그룹화 기준. 이렇게 하면 각 고유한 날짜-제품 조합이 최종 결과에 한 번만 표시됩니다.
  4. 인바운드 및 아웃바운드 합계: SUM을 사용하여 각 날짜-제품 조합의 총 인바운드 수량을 계산합니다. 및 SUM을 사용하여 각 조합에 대한 총 아웃바운드 거래를 계산합니다.
  5. 결과 표시: 최종 결과 집합에는 날짜, 각 고유 날짜 및 제품 조합에 대한 제품, 총 인바운드 수량 및 총 아웃바운드 거래

예제 코드:

SELECT Date, Product, SUM(Inbound) AS Inbound, SUM(Outbound) AS Outbound
FROM ((SELECT Inbound_Date AS Date, Product, SUM(Quantity) AS Inbound, 0 AS Outbound
      FROM Inbound
      GROUP BY 1, 2
     ) UNION ALL
     (SELECT Outbound_Date, Product, 0 AS Inbound, COUNT(*) AS Outbound
      FROM Outbound
      GROUP BY 1, 2
     )
    ) io
GROUP BY Date, Product;

위 내용은 SQL 테이블을 병합하고 고유한 날짜 값을 보장하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.