Согласно комментарию, не очень ясно, что вы спрашиваете, но если @idx было 57, то это получило бы любые данные, которые были в 57, 58, 59, 00, 01 или 02 (ну, кроме того факта, что02 как число просто 2
, поэтому, если index является буквально 02
, то потребуется некоторая корректировка)
SELECT * FROM table WHERE index in (
@idx,
(@idx+1)%60,
(@idx+2)%60,
(@idx+3)%60,
(@idx+4)%60,
(@idx+5)%60
)
Настройте дополнения, если ваш индекс 1 - 60 вместо 0 -59. Это проще всего сделать, подставив 1 из индекса, чтобы оно стало 0-59 вместо 1-60:
SELECT * FROM table WHERE index-1 in (
@idx,
(@idx+1)%60,
(@idx+2)%60,
(@idx+3)%60,
(@idx+4)%60,
(@idx+5)%60
)
В принципе, помните, что оператор мода всегда возвращает число от 0 до единицы меньшеделитель, поэтому x % 1000
гарантированно вернется между 0 и 999 (включительно)