将 group by 和 join 组合成一个查询 SQL

Dan*_*aos 4 sql sql-server join group-by

我知道过去有人问过类似的问题,我浏览了它们,但没有一个答案似乎适用于我的具体问题。这是我的代码:

SELECT
    a.productid,
    a.SUM(amount),
    b.name
FROM
    sales a
JOIN 
    products b ON b.Id = a.productid
GROUP BY 
    a.productid
Run Code Online (Sandbox Code Playgroud)

2个表:销售、产品。Sales 包含以下列:Id、amount、price、productid。产品包含:ID、名称。

由于某种原因我的查询不起作用。谁能帮我解决这个问题吗?

Rah*_*thi 5

尝试这个:

SELECT
a.productid,
SUM(amount),
b.name
FROM
sales a
JOIN products b ON b.Id = a.productid
GROUP BY a.productid, b.name
Run Code Online (Sandbox Code Playgroud)

聚合函数中没有的列(a.productid, b.name)需要在 GROUP BY 子句中添加。