Office中国论坛/Access中国论坛

标题: 如何在“报表”中统计不重复“销售单号”个数? [打印本页]

作者: 1959dasxsf    时间: 2015-3-12 20:58
标题: 如何在“报表”中统计不重复“销售单号”个数?
如何在“报表”中统计不重复“销售单号”个数?我设计的报表可以正确统计销售记录(销售序号),但是统计不重复“销售单号”的个数,不会设计,请帮助



作者: 站到终点站    时间: 2015-3-13 09:34
本帖最后由 站到终点站 于 2015-3-13 09:37 编辑

DCount是算不出非重复记录数的,除非你提供给DCount的查询本身就是非重复查询,DCount只能针对所提供的查询按照某个筛选条件计算符合该条件的记录总数,而非重复记录不是一种筛选条件,它不是通过SQL语句中的Where子句体现的。

你的实例中的非重复记录数也不止10条,总共是23条非重复销售记录。
[attach]55883[/attach]

作者: roych    时间: 2015-3-13 10:26
本帖最后由 roych 于 2015-3-13 10:29 编辑

增加一个字段,订单数:1/dcount("销售单号","销售记录","销售单号="&[销售单号])
那么就可以将重复值平均分配下去。最后再合计,四舍五入基本就没太大问题了。
当然,更好的做法是用记录集读取销售表,再在格式化事件中写入。我猜,楼上的可能是这个做法。不过,这对于新手来说,可能有点难。
[attach]55884[/attach]

作者: roych    时间: 2015-3-13 10:33
站到终点站 发表于 2015-3-13 09:34
DCount是算不出非重复记录数的,除非你提供给DCount的查询本身就是非重复查询,DCount只能针对所提供的查询 ...

下载个附件,发现,基本还真猜对了。不过里面的语句写得不太好,毕竟Access里的子查询执行效率比较低。
——其实SQL语句可以从“销售基础表”里直接读取RecordCount会更快一些的。个人意见,供参考而已。
作者: xlb004    时间: 2015-3-15 10:48
一月又一月一样一样
作者: xlb004    时间: 2015-3-15 10:52
uuuuuuuuuuuuuu




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3