Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

[5分]再次高手求助:数据行内三步以上计算如何做?

陈瑛  发表于:2011-10-10 22:52:08  
复制

如这样的例子,如下

 

ID 部门 分部 产品 科目 金额
1 部门1 1分部 产品1 收入 150
2 部门1 1分部 产品1 成本 80
3 部门1 1分部 产品1 费用 30


4 部门2 2分部 产品2 收入 1000
5 部门2 2分部 产品2 成本 300
6 部门2 2分部 产品2 费用 200

 

收入-成本-费用=利润

 

如何创建查询,实现

 

ID 部门 分部 产品 科目 金额
1 部门1 1分部 产品1 利润 20

2 部门2 2分部 产品2 利润 500

 

点击下载此附件

 

Top
煮江品茶 发表于:2011-10-11 07:11:47
SELECT 部门, 分部, 产品, Sum((IIf(损益表.科目="收入",[金额],-1*[金额]))) AS 利润
FROM 损益表
GROUP BY 部门, 分部, 产品

dbaseIIIer 发表于:2011-10-11 07:37:05

可以少两粒字,让数据库不用每条记录去解析文本"-1"然后调用乘法副程式, 会快那么一点点的!

 

 

SELECT 部门, 分部, 产品, Sum((IIf(损益表.科目="收入",[金额],-[金额]))) AS 利润
FROM 损益表
GROUP BY 部门, 分部, 产品



丘山 发表于:2011-10-11 10:18:11

如这样的例子,如下

 

ID 部门 分部 产品 科目 金额
1 部门1 1分部 产品1 收入 150
2 部门1 1分部 产品1 成本 -80
3 部门1 1分部 产品1 费用 -30


4 部门2 2分部 产品2 收入 1000
5 部门2 2分部 产品2 成本 -300
6 部门2 2分部 产品2 费用 -200

 

使用分类汇总,岂不甚好



陈瑛 发表于:2011-10-11 19:56:47

分类汇总?是在EXCEL中操作吗?日常工作中处理数据量在数十万条时,excel不方便的。

 

 



丘山 发表于:2011-10-11 20:34:42

查询里的分组汇总啊

你应该知道啊



陈瑛 发表于:2011-10-11 23:13:26

使用查询分类汇总,先要将原数据中的成本、费用做负数处理?



access爱好者 发表于:2011-10-27 13:17:15
根据 煮江品茶的查询给你做个实例。点击下载此附件

爱好 发表于:2011-10-31 08:09:30

也可以直接在"表内"或"科目表"内加一个字段叫"系数",定义收入类是1,成本、费用类是-1;资产类是1,负债类是-1。在运算时,用科目余额*系数。就是想要的结果。



振宇 发表于:2011-10-31 21:29:49
总记录:9篇  页次:1/1 9 1 :