日期:2014-05-17  浏览次数:20571 次

99乘法表
虚荣心作怪另开一贴
求表扬~

with cte as
(
 select 1 n  union all select n+1 from cte where n<9
)
select t2.n , stuff((
    select ', ' + cast(t2.n as char(1)) + 'x'+ cast(n as char(1)) + '=' + cast(t2.n*n as char(2))
    from cte where (n <= t2.n)
    for xml path ('')),1,2,'') from cte t1 left join cte t2
on t1.n >= t2.n
group by t2.n

/*
result
1x1=1 
2x1=2 , 2x2=4 
3x1=3 , 3x2=6 , 3x3=9 
4x1=4 , 4x2=8 , 4x3=12, 4x4=16
5x1=5 , 5x2=10, 5x3=15, 5x4=20, 5x5=25
6x1=6 , 6x2=12, 6x3=18, 6x4=24, 6x5=30, 6x6=36
7x1=7 , 7x2=14, 7x3=21, 7x4=28, 7x5=35, 7x6=42, 7x7=49
8x1=8 , 8x2=16, 8x3=24, 8x4=32, 8x5=40, 8x6=48, 8x7=56, 8x8=64
9x1=9 , 9x2=18, 9x3=27, 9x4=36, 9x5=45, 9x6=54, 9x7=63, 9x8=72, 9x9=81
*/

------解决方案--------------------

------解决方案--------------------
加了个逗号?
------解决方案--------------------
学习了,感谢分享.

------解决方案--------------------
楼主,这个在SQL 2000报错,你是用什么版本的
------解决方案--------------------
good
------解决方案--------------------
表扬一下...