设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1266|回复: 5
打印 上一主题 下一主题

[Access本身] 求助:如何对数据进行先排序,后累加?(用Dsum函数)

[复制链接]
跳转到指定楼层
1#
发表于 2007-6-29 19:52:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
表1: 产品代号       数量

           A               10

           B                20

           C                5

           D               10

需得到的结果表第一步:将数量从低到高进行排序,第二步:如果数量有重复,就根据产品代号进行再次排序,第三步:根据排序后的结果,将数量进行累加)

    产品代号       数量         数量累加

        C                 5                 5

        A                10               15

        D               10                25

        B                20               45

      而我现在用的语句为:

              SELECT [1].[产品代号], [1].[数量], DSum("数量","1","产品代号<='" & [产品代号] & "'") AS [数量累加]
               FROM 1;

用以上语句得到的表为:

       产品代号       数量       数量累加

           A               10           10

           B                20          30

           C                5            35

            D              10          45

用以上的这个语句只能将数量进行累加,但达不到先排序后累加的效果.这不是我想要的表.

期待各位的帮助!谢谢!




        

[此贴子已经被作者于2007-6-29 14:22:32编辑过]

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2007-6-29 20:03:00 | 只看该作者
尝试一下这样

SELECT [1].[产品代号], [1].[数量], DSum("数量","1","数量<=" & [数量] &) AS [数量累加]
               FROM 1;
3#
发表于 2007-6-29 20:03:00 | 只看该作者
尝试一下这样

SELECT [1].[产品代号], [1].[数量], DSum("数量","1","数量<=" & [数量]) AS [数量累加]
               FROM 1;
4#
 楼主| 发表于 2007-6-29 22:26:00 | 只看该作者
谢谢 一点通:

  上面这个语句是可以达到对数量先排序后累加的效果,

我测试了一下,如果出现数量重复时,就会出现并排的现象,而我不希望出现这种现象.

所以,当数量有重复时,要对产品代号进行再次排序,然后再进行累加.

这样的条件下又怎么写语句呢?

期待解答!

5#
发表于 2007-6-30 11:39:00 | 只看该作者
我也想知道,一点通大师指点下
6#
发表于 2007-6-30 11:39:00 | 只看该作者
晕,卡了,发两次

[此贴子已经被作者于2007-6-30 3:40:41编辑过]

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-14 14:44 , Processed in 0.096125 second(s), 29 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表