我想在sql中创建一个旋转逻辑,例如考虑有3个数字1,2,3然后第一周1,2将被选中接下来3,1下一个2,3等等.....如果有的话是4个数字1,2,3,4然后1,2下一个3,4下一个1,2等等...就像我想在sql server中生成数字。请帮助我。
答案 0 :(得分:1)
你喜欢这样:
declare @cnt int, @ofs int
select @cnt = count(*) from TheTable
set @ofs = (((@week - 1) * 2) % @cnt) + 1
select * from TheTable
where Number between @ofs and @ofs + 1
union all
select * from TheTable
where Number between @ofs - @cnt and @ofs - @cnt + 1
答案 1 :(得分:0)
获取自纪元日期起的周数模数,然后从数字表中选择介于1和您的限制之外的所有条目,模数结果除外。