Я знаю, что мы можем использовать BETWEEN внутри CASE. Но у меня есть ситуация, когда я хочу сделать наоборот. Я знаю, что мы не можем вернуть больше одного значения из case case.But, как достичь ниже ситуации ??Можем ли мы использовать CASE в BETWEEN
select * from #Results
where Num Between
case when @StartIndex>0 then
((@StartIndex-1) * @PageCount))+ 1)) AND (@StartIndex * @PageCount)
else
((@StartIndex-1) * @PageCount)+ 1) AND (((@StartIndex-1) * @PageCount)+ 1)
Да, вы можете использовать его – Sami
Что такое логика вы хотите реализовать в вашем 'WHERE' пункте? –
@TimBiegeleisen Если '@StartIndex> 0', то Num должно быть' BETWEEN' 2 значения '(((@ StartIndex-1) * @PageCount)) + 1)) AND (@StartIndex * @PageCount)' else '(((@ StartIndex-1) * @PageCount) + 1) И (((@ StartIndex-1) * @PageCount) + 1) ' –