对来自不同 table 的 AGGREGATE SUM 执行 LEFT JOIN

Performing LEFT JOIN on an AGGREGATE SUM from a different table

我有两个 tables(缺陷,sort_data),我想对它们执行聚合总和和左连接的组合以显示所有缺陷名称,从sort_data 中的最高数量总和,还包括 sort_data table 中不存在的缺陷。见下文。

defects
defect_name
-----------
Snapped     
Cracked     
Melted      
Warped      
Other       

sort_data
defect_name |qty
----------------
Snapped     |5
Cracked     |1
Snapped     |15
Snapped     |10
Melted      |2

Desired results: 
Snapped
Melted
Cracked
Other
Warped

我可以使用总和从 sort_data 创建列表的一部分:

SELECT sort_data.defect_name, sum(qty) 
FROM sort_data 
GROUP BY sort_data.defect_name 
ORDER BY sum(qty)

我相信我还需要像这样的左连接:

SELECT * 
from defects 
LEFT OUTER JOIN sort_data on sort_data.defect_name = defects.defect_name

我不确定如何将两者结合起来。帮助将不胜感激。谢谢。

使用左连接

SELECT defect.defect_name, sum(sort_data.qty) 
FROM defect 
LEFT JOIN sort_data on sort_data.defect_name = defects.defect_name
GROUP BY sort_data.defect_name 
ORDER BY sum(sort_data.qty);