) F3
where m.r<@rows*2
order by isnull(nullif((m.r +(@rows-n.r)+(m.r-1)*1)%@cols,0),@cols) asc
for xml path(”)
),1,1,”) as data_lse
)b
where n.r <=@rows
)
select @sql=isnull(@sql+’ union all ‘,”)+data_lse from cte_1
exec(@sql)
(【注】:当前脚本在SQL Server 2012上测试通过)
效果图:
这方法虽然没有借助临时表,也有一个最大的不足就是不能设置太多行,因为在公式(C(n,m)=n!/[m!(n-m)!])中有n! 和m! 算式,设置行数太多会导致阶乘数据太大,发生数据类型转换溢出。有时间再想办法看能否从表示式中”/”除位置进行优化
您可能感兴趣的文章:PHP写杨辉三角实例代码C++输出上三角/下三角/菱形/杨辉三角形(实现代码)C语言小程序 杨辉三角示例代码java使用for循环输出杨辉三角批处理杨辉三角效果实现代码用Python输出一个杨辉三角的例子C语言在屏幕上输出杨辉三角基于Java实现杨辉三角 LeetCode Pascal”s Triangle










