簡體   English   中英

從另一個表減去列的總和 - SQL select 語句

[英]Sum of column minus column from another table - SQL select statement

https://i.imgur.com/uQWh8NJ.png

我需要有關此 SQL 聲明的幫助。

我不知道如何獲得 null 或零作為副工資列中的空字段或如何不復制記錄。

使用GROUP BYLEFT JOIN將有助於:

SELECT T1.Emp_Id, T1.Safe_Id, T1.Salary,
       SUM(T2.SubSalary) AS SubSalary,
       (T1.Salary - SUM(T2.SubSalary)) AS [Difference]
FROM TableOne T1
LEFT JOIN TableTwo T2 ON T2.Emp_Id = T1.Emp_Id AND T2.Safe_Id = T1.Safe_Id
GROUP BY T1.Emp_Id, T1.Safe_Id, T1.Salary

像這樣的東西應該可以解決問題

 SELECT t1.EmployeeID
    ,t1.safe_id
    ,MAX(t1.salary)
    ,SUM(COALESCE(t2.subSalary, 0)) AS SubSalary
    ,MAX(t1.salary) - SUM(COALESCE(t2.subSalary, 0)) AS difference
FROM Table1 t1
LEFT JOIN Table2 t2 ON t1.emp_id = t2.emp_id
    AND t1.safe_id = t2.safe_id
GROUP BY t1.EmployeeID
    ,t1.safe_id

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM