如何在没有循环的情况下让SQL重复一些基于集合的操作任意次?如何让SQL对一系列数字执行操作?我基本上是在寻找一种基于集合的for循环的方法.
我知道我可以创建一个包含整数的小表,比如从1到1000,然后将其用于该范围内的范围操作.
例如,如果我有那个表,我可以做一个选择,找到100-200这样的数字总和:
select sum(n) from numbers where n between 100 and 200
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?我有点想找一些适合T-SQL的东西,但任何平台都没关系.
[编辑]我有自己的解决方案,使用SQL CLR,适用于MS SQL 2005或2008. 请参阅下文.