【发布时间】:2014-01-10 16:37:32
【问题描述】:
我有一个基本上是这样的 sql 表:
如您所见,有些数据使用相同的 ProductID(1002 和 1004)。我希望这张表与相同 ProductID 的行相加并合并。
我正在使用 c# 和 dataGridView。我们可以通过 sql 查询对这些值求和然后将其加载到 dataGridView 吗?或者我必须创建一个 if - for etc.. 语句来检查和汇总 dataGridView 行?
编辑:
大卫的回答:
select * from tblOrderDetail where OrderID in
(select OrderID from tblOrders whereCustomerID = 231234)
// Select * at start gets the ProductID and Quantity
我如何将您的解决方案添加到此?当我尝试几件事时,我在使用“in”子句时遇到了错误。
【问题讨论】:
-
您遇到了什么错误?你的这个新问题(也许你应该作为一个新问题提出)与原来的问题有什么关系?
-
错误是“列 tblOrderDetail.OrderDetailID 在选择列表中无效,因为它不包含在聚合函数或 GROUP BY 子句中。”实际上,我为这个查询问了这个问题。我只是想让它看起来简单易用。
-
因此,tblOrderDetail 中不属于您要添加的内容的任何列都需要进入 GROUP BY 子句。如果不清楚,请发布这些列的实际内容。
-
@DavidWallace 这显然是表格的一部分。我收到此错误是因为我不习惯 sql 查询语言的语法或其他任何语言。我会在语法上尝试不同的方法。感谢 SUM 功能。非常感谢。
-
因此,除了要添加的部分之外,您选择的任何内容都需要列在 GROUP BY 旁边。
标签: c# sql datagridview sum