最近,在论坛中,遇到了不少比较难的sql问题,虽然自己都能解决,但发现过几天后,就记不起来了,也忘记解决的方法了。
所以,觉得有必要记录下来,这样以后再次碰到这类问题,也能从中获取解答的思路。
1、求一个获取连续值的方法。
http://bbs.csdn.net/topics/390620211
这个用spt_values也可以。
如果是SQL Server 2005及以后的版本,可以通过递归来实现,非常简单。
我的解法:
;with ras(select 1 as number --第一个数union allselect number + 1from rwhere r.number < 10 --最后一个数)select *from r--option(maxrecursion 1000)/*number12345678910*/