表A
Aid , a , b , c , d
1 , a1, b1, c1, d1
2 , a2, b2, c2, d2
3 , a3, b3, c3, d3表B
Bid , Aid , e, f
1 , 1 ,10, f1
2 , 1 , 3, f2
3 , 2 ,-2, f3
4 , 2 , 6, f4
5 , 2 , 7, f5SQL查询后结果是
Aid a b c d sum(e) fA表所有数据都出现,b表计算e字段合计数
Aid , a , b , c , d
1 , a1, b1, c1, d1
2 , a2, b2, c2, d2
3 , a3, b3, c3, d3表B
Bid , Aid , e, f
1 , 1 ,10, f1
2 , 1 , 3, f2
3 , 2 ,-2, f3
4 , 2 , 6, f4
5 , 2 , 7, f5SQL查询后结果是
Aid a b c d sum(e) fA表所有数据都出现,b表计算e字段合计数
group by Aid 报错啊
a,b,c,d中有b是text字段 不能group
你就费了写个SQL语句出来嘛
from A left Join B on a.Aid = b.Aid
Group by Aid, a, b, c, d, f
为啥还要显示f呢
from tb
group by aid,convert(varchar(max),a),convert(varchar(max),b),convert(varchar(max),c)如果你是2000,那么varcahr(max)改成varchar(8000)
AS Expr2, dbo.DepartmentWorkTarget.IndexCategory, dbo.DepartmentWorkTarget.IndexValue, SUM(dbo.DepartmentWorkTargetScore.DepartmentWorkTargetScore)
AS Expr1
FROM dbo.DepartmentWorkTarget INNER JOIN
dbo.AssessContent ON dbo.DepartmentWorkTarget.AssessContentID = dbo.AssessContent.AssessContentID LEFT OUTER JOIN
dbo.DepartmentWorkTargetScore ON dbo.DepartmentWorkTarget.DepartmentWorkTargetID = dbo.DepartmentWorkTargetScore.DepartmentWorkTargetID
WHERE (dbo.DepartmentWorkTarget.UnitsID = 1) AND (dbo.DepartmentWorkTarget.YearMarkID = 1)
GROUP BY dbo.DepartmentWorkTarget.DepartmentWorkTargetID, dbo.AssessContent.AssessContentName, CONVERT(varchar(MAX), dbo.DepartmentWorkTarget.IndexContent),
dbo.DepartmentWorkTarget.IndexCategory, dbo.DepartmentWorkTarget.IndexValue, dbo.DepartmentWorkTargetScore.DepartmentWorkTargetScore
可以查询了,但查询后还是分列显示,没有统计合。