分组和小计

时间:2014-07-07 13:34:55

标签: sql sql-server grouping subtotal

我目前正在编写一份报告,我希望通过字段apar_id进行分组,并且每个报告都有一个小计。 鉴于我的知识有限,并被许多谷歌答案所包围,我要求你的意见。

我的代码如下:

SELECT d.apar_name,a.*,b.rel_value,c.dim_b
FROM acutrans a 
LEFT JOIN aglrelvalue b ON a.apar_id=b.att_value
LEFT JOIN acrtrees c ON b.rel_value=c.cat_1
LEFT JOIN acuheader d ON a.apar_id=d.apar_id
WHERE b.rel_attr_id='212'
AND b.attribute_id='A4'
AND a.client='CL'
AND a.client=b.client
AND a.client=c.client
AND c.att_agrid='60'
AND (b.rel_value='X24' OR c.dim_b='PCT')
ORDER BY a.apar_id

结果类似于     apar_id | ..... |量.....     x 100     x 300     x -100     是400     是100

并希望

apar_id | ..... | amount.....
x                 100
x                 300
x                 -100
Total X           300
Y                 400
Y                 100
Total Y           500

提前致谢

1 个答案:

答案 0 :(得分:1)

许多数据库支持with rollup的{​​{1}}子句。如果你这样做,你可以通过group by声明做你想做的事。

group by

虽然您可以调整此解决方案(如果您的数据库支持它),但这并不能专门解决此问题。