Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

SQL SELECT Tổng các giá trị mà không bao gồm các bản sao

Bạn nên sử dụng các truy vấn con trên int và ext để tính tổng và kết hợp với các truy vấn con.

Tôi cũng khuyên bạn nên sử dụng các JOIN rõ ràng thay vì bảng, bảng, bảng

ví dụ:

SELECT emp.Name, int.Amount AS InternalCostTotal, ext.Amount AS ExternalCostTotal
FROM Employees emp
JOIN ( 
    SELECT EmployeeID, SUM(Amount) AS Amount 
    FROM InternalCosts 
    GROUP BY EmployeeID 
) int ON emp.EmployeeId = int.EmployeeID
JOIN ( 
    SELECT EmployeeID, SUM(Amount) AS Amount 
    FROM ExternalCosts 
    GROUP BY EmployeeID 
) ext ON emp.EmployeeId = ext.EmployeeID


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Con trỏ lồng nhau trong PL / SQL

  2. Nhập từ kiểm tra xác thực cơ sở dữ liệu oracle

  3. SQL - cách đếm kết hợp duy nhất của các cột

  4. Cách tránh lỗi ORA-04091 trong trình kích hoạt

  5. Oracle 11g - SQL để tính toán chênh lệch thời gian giữa một số hàng