sql-server – MS SQL Server中的自定义聚合函数?

前端之家收集整理的这篇文章主要介绍了sql-server – MS SQL Server中的自定义聚合函数?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如何在MS sql Server中创建自定义聚合函数?一个例子会有很多帮助.

解决方法

sql Server 2000不正式支持自定义聚合函数.然而,我最近也需要这个功能,我发现这篇文章有启发性:
http://weblogs.sqlteam.com/jeffs/articles/1490.aspx

但这有点黑客:它需要访问sp_OA___扩展过程.

总结是您可以使用一系列四个包装函数来模拟聚合函数,每个函数执行以下任务之一:

>创建可以在查询中保持状态的ActiveX对象.在运行查询之前调用它.

>使用ActiveX对象进行实际聚合.
>清除GROUP BY边界上的ActiveX对象状态
破坏对象在运行查询错误处理之后调用它.

然后,您可以在查询的选择列表中包含项目2和3,并且项目2也必须包含在现有的无效果聚合函数(如MAX()或MIN())中.您还可以使用此技术来执行累积函数,例如行号.

一些评论表明,优化器可能尝试通过优化在某些情况下的呼叫来否定聚合效应,尽管我预计这将是非常罕见的情况.但是,我发现这个问题是因为我把这些警告认真地用于继续搜索更好的东西.

猜你在找的MsSQL相关文章