欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

access兑现自定义聚合函数

更新时间: 2014-01-05 02:25:42 责任编辑: Author_N1

 

access实现自定义聚合函数
使用access对数据进行处理,遇到一个如何自定义聚合函数的问题:需要将字段进行连乘,类似于sum()的实现。


经过研究找到一种方法与大家分享:


access定义聚合函数需要使用vba函数:

Function sql(ByVal str As String) As String
    sql =  “select value from table where id = '”; + str +“'"
End Function

Function getResult(sql As String) As Double
    Static db As DAO.Database
    Dim rst As DAO.Recordset
    Set db = CurrentDb()
    Set rst = db.OpenRecordset(sql, dbOpenDynaset, dbReadOnly)
    rst.MoveLast
    rst.MoveFirst
    Dim result As Double
    result = 1#
    Do While Not rst.EOF
        If rst.Fields(0).Value Then
            result = result * rst.Fields(0).Value
        End If
        rst.MoveNext
    Loop
    Set rst = Nothing
    Set db = Nothing
    getResult = result
End Function

sql语句改为:
select
*,
getResult(sql(id))
from
(
select distinct id
from table
)

上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:25:42
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/9686/
本文WWW.DOC100.NET DOC100.NET版权所有。