Sql-Server

如何在 SQL Server 中使用 SUM 和 GROUP BY 連接兩個表

  • April 29, 2022

我有 2 張桌子

  1. 產品

2)子產品

我想要的是:產品表中的指定和代表具有相同product_id的數量的總和的總數量

注意:我使用 SQL 伺服器

這可以簡單地使用一個JOINandGROUP_BY子句來完成,如下所示:

SELECT 
   p.designation, 
   SUM(ISNULL(sp.quantity, 0)) AS [total quantity]
FROM product AS p
LEFT JOIN sub_product AS sp
   ON p.id = sp.product_id
GROUP BY p.id, p.designation

請注意使用 a LEFT OUTER JOIN(aka a LEFT JOIN) 以確保即使products沒有任何sub_products仍然返回 (atotal quantity為 0)。sub_product如果可以保證每次都至少有 1 個,product那麼您可以使用 anINNER JOIN來代替。

引用自:https://dba.stackexchange.com/questions/311396