SELECT 案件.经办律师, SUM(收支录入.金额) AS 收入金额
FROM 收支录入 INNER JOIN
案件 ON 收支录入.案件编号 = 案件.id
GROUP BY 案件.经办律师上面语句为什么在SQL 2000中好使,但在.net中就不好使,出现以下错误:
“DataBinder.Eval:“System.Data.DataRowView”不包含名称为 案件编号 的属性。”其中,表 案件 包含字段:id,经办律师,
表 收支录入 包含字段:案件编号 收支方式 金额
FROM 收支录入 INNER JOIN
案件 ON 收支录入.案件编号 = 案件.id
GROUP BY 案件.经办律师上面语句为什么在SQL 2000中好使,但在.net中就不好使,出现以下错误:
“DataBinder.Eval:“System.Data.DataRowView”不包含名称为 案件编号 的属性。”其中,表 案件 包含字段:id,经办律师,
表 收支录入 包含字段:案件编号 收支方式 金额
FROM 收支录入 INNER JOIN
案件 ON 收支录入.案件编号 = 案件.id
GROUP BY 案件.经办律师
FROM 收支录入,案件
WHERE 收支录入.案件编号 = 案件.id
GROUP BY 案件.经办律师
看改成这个行不行??
列 '收支录入.案件编号' 在选择列表中无效,因为该列既不包含在聚合函数中,也不包含在 GROUP BY 子句中。3楼的和我的写法实质上是一样的,还有谁知道怎么回事啊?
FROM 收支录入 INNER JOIN
案件 ON 收支录入.案件编号 = 案件.id
GROUP BY 案件.经办律师改成这样就可以了,你都没有查询出"收支录入.案件编号"怎么绑定啊!
列 '收支录入.案件编号' 在选择列表中无效,因为该列既不包含在聚合函数中,也不包含在 GROUP BY 子句中
这样的错误
而且我的表项中并不需要案件编号这个列,如果有这个列,group by 经办律师 也就没有意义了
当然里面不能有案件编号这个字段了,因为你已经在聚合。如果程序里面还需要每个律师收入的总和对应的案件编号明细可以用另外的查询语句得到,比如:
SELECT 案件.案件编号
FROM 收支录入 INNER JOIN
案件 ON 收支录入.案件编号 = 案件.id
where 案件.经办律师 = "XX律师"