ВЫБРАТЬ задокументировано для возврата NULL:
Если значение индекса превышает границы массива значений
Так что вам нужно выполнить операцию по модулю. Оператор по модулю в SQL: % , поэтому он будет:
Cast( Choose(((ID%4)+1),'India','Australia','England','Belgium') as varchar(100))
(у меня изначально было -1 от ID
, но, учитывая, что этот оператор выполняется в контексте, где значение ID
взято из предыдущей строки, с этим уже разобрались)