使用 Count 和 Group by 对 Gridview 进行 SQL 查询

SQL Query for Gridview with Count and Group by

提问人:Baiju 提问时间:9/18/2023 最后编辑:SergBaiju 更新时间:9/27/2023 访问量:47

问:

在我的aspx + VB + sql Web中,我有一个网格视图来显示购买摘要

如果我使用此查询,那么我会正确地获得供应商明智的摘要

SELECT Convert(varchar(10), Date,105) as Date, Vendor, SUM(Quantity) As Quantity, SUM(Rate) As Rate 
FROM Procurement 
GROUP BY Date,Vendor

但是我想要通过乘以数量和速率来获得总金额,然后得到金额。我使用了这个查询。但在这方面,我没有得到我正在寻找的供应商明智摘要。

SELECT Convert(varchar(10), Date,105) as Date, Vendor, SUM(qty) As Quantity, SUM(Rate) As Rate, Qty * Rate as Amount 
FROM Procurement 
GROUP BY Date,Vendor,Qty,Rate

我想要这样的输出

Date  Vendor  Quantity  Rate  Amount 
SQL asp.net

评论


答:

0赞 WiredMenace 9/18/2023 #1

现在,您不取数量和费率的总和来获得金额。您还需要按不在聚合中的列进行分组,因为现在它只选择每一行。

SELECT Convert(varchar(10), Date,105) as Date, Vendor, 
SUM(qty) As Quantity, SUM(Rate) As Rate, SUM(Qty) * SUM(Rate) as Amount 
FROM Procurement 
GROUP BY Date, Vendor

评论

0赞 Wayne Birch 9/21/2023
GROUP BY不需要使用而不是吗?Convert(varchar(10), Date,105)Date
0赞 Baiju 9/24/2023
是的,需要取费率和数量的总和
0赞 Baiju 9/30/2023
我无法继续,因为此查询正在计算费率和数量总和的总和,并显示金额实际上我正在寻找每个产品的乘以率和数量,然后获取供应商的综合摘要
0赞 Baiju 9/30/2023
我在这里创建了一个模式。sqlfiddle.com/#!18/fad34/2
0赞 Baiju 9/30/2023
每种产品都有不同的费率和数量。 我想要一个供应商的摘要,我在一个供应商身上花了多少钱来购买产品