SQL,辅助数表

SQL,辅助数表

对于某些类型的SQL查询,一个数字辅助表可能非常有用。它可以创建为一个表,其行数与特定任务所需的行数相同,也可以作为用户定义的函数创建,该函数返回每个查询中所需的行数。

创建这样一个函数的最佳方式是什么?


慕村225694
浏览 674回答 3
3回答

守着星空守着你

最优的函数是使用表而不是函数。使用函数会导致额外的CPU负载来为返回的数据创建值,特别是如果返回的值覆盖范围很大的话。

翻阅古今

这篇文章给出了14种可能的解决方案,并进行了讨论。重要的是:关于效率和绩效的建议往往是主观的。无论如何使用查询,物理实现都决定查询的效率。因此,与其依赖有偏见的指导方针,还必须测试查询并确定哪个查询的性能更好。我个人喜欢:WITH&nbsp;Nbrs&nbsp;(&nbsp;n&nbsp;)&nbsp;AS&nbsp;( &nbsp;&nbsp;&nbsp;&nbsp;SELECT&nbsp;1&nbsp;UNION&nbsp;ALL &nbsp;&nbsp;&nbsp;&nbsp;SELECT&nbsp;1&nbsp;+&nbsp;n&nbsp;FROM&nbsp;Nbrs&nbsp;WHERE&nbsp;n&nbsp;<&nbsp;500&nbsp;)SELECT&nbsp;n&nbsp;FROM&nbsp;NbrsOPTION&nbsp;(&nbsp;MAXRECURSION&nbsp;500&nbsp;)
打开App,查看更多内容
随时随地看视频慕课网APP