设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[查询] [已解决]行数据中取最大日期值,其中有空值

[复制链接]
跳转到指定楼层
1#
发表于 2008-6-19 10:55:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在表中进行查询,需要将表中的几个字段中取出最大的日期值。但是其中有空值。
函数为cdate(Maximum(字段1,字段2,字段3,字段4,字段5,字段6))
其中函数Maximum()是这样定义的
Function Maximum(ParamArray FieldArray() As Variant)
    Dim I As Integer
    Dim currentVal As Variant
    currentVal = FieldArray(0)
    For I = 0 To UBound(FieldArray)
        If FieldArray(I) > currentVal Then
            currentVal = FieldArray(I)
        End If
    Next I
    Maximum = currentVal
End Function
但是出来的结果有错误。
详细见例子



解决方法:SELECT 总表.存货编码, 总表.最近销售日期, 总表.今年发货数量, 总表.今日库存, 总表.去年销售数量, 总表.昨日库存, 总表.今年平均销量, 总表.年平均销量, CDate(Maximum(条件1,条件2,条件3,条件4,条件5,条件6)) AS [Max Hit date], nz(总表.条件①," ") AS 条件1, nz(总表.条件②," ") AS 条件2, nz(总表.条件③," ") AS 条件3, nz(总表.条件④," ") AS 条件4, nz(总表.条件⑤," ") AS 条件5, nz(总表.条件⑥," ") AS 条件6
FROM 产品信息 INNER JOIN 总表 ON 产品信息.存货编码 = 总表.存货编码

[ 本帖最后由 coolabc 于 2008-6-20 11:40 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2008-6-19 11:23:47 | 只看该作者
可参考《日期型和数据型行数据取最大值示例》http://www.office-cn.net/forum.p ... ght=%2Bhuangqinyong
3#
 楼主| 发表于 2008-6-19 11:44:45 | 只看该作者
原帖由 huangqinyong 于 2008-6-19 11:23 发表
可参考《日期型和数据型行数据取最大值示例》http://www.office-cn.net/forum.php?mod=viewthread&tid=60626&highlight=%2Bhuangqinyong


这个我也参照过,但是如果里面有空值就不能比较了
4#
发表于 2008-6-19 14:58:01 | 只看该作者
用NZ()解决[:45]
5#
 楼主| 发表于 2008-6-19 17:40:05 | 只看该作者
格式怎么定呢?
不能直接赋值0,比较出来的是乱的!
6#
 楼主| 发表于 2008-6-20 10:46:13 | 只看该作者
还请各位帮帮忙!
7#
 楼主| 发表于 2008-6-20 11:32:18 | 只看该作者
问题解决了。是自己字段写错了。用NZ()可以解决了。感谢!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-6-3 00:54 , Processed in 0.081829 second(s), 31 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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