SQL 2005合并将多行合并为一列

SQL 2005合并将多行合并为一列,第1张

SQL 2005合并/将多行合并为一列

我更喜欢定义一个自定义的用户定义的聚合。 这是一个UDA的示例,它可以完成非常接近您要求的功能。

为什么使用用户定义的聚合而不是嵌套的SELECT?一切都与性能以及您愿意忍受的东西有关。对于少量元素,您当然可以避免使用嵌套的SELECT,但是对于较大的“
n”,您会注意到查询计划实际上对输出列表中的每一行运行一次嵌套的SELECT。如果您要谈论大量的行,这可能是死亡之吻。使用UDA,可以一次汇总这些值。

当然,要权衡的是UDA要求您使用CLR进行部署,而这并不是很多人经常做的事情。在Oracle中,这种特殊情况会更好一些,因为您可以直接使用PL / SQL创建用户定义的聚合,但是我离题了…



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5640799.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存