Я знаю, что это старый вопрос, но, поскольку я только что столкнулся с этой проблемой и получил душевное спокойствие, не упомянутое здесь, я жестко могу поделиться им, поэтому вот оно:
1 - Вам нужно создать ФУНКЦИЮ, которая возвращает числа в заданном диапазоне:
CREATE FUNCTION fnc_numbers_in_range (pMinNumber INT, pMaxNumber INT)
RETURNING INT as NUMERO;
DEFINE numero INT;
LET numero = 0;
FOR numero = pMinNumber TO pMaxNumber
RETURN numero WITH RESUME;
END FOR;
END FUNCTION;
2 - Результаты этой функции скрещиваются с нужной таблицей:
SELECT * FROM TABLE (fnc_numbers_in_range(0,10000)), my_table;
Единственное, что вы должны заранее знать, сколько строк вы хотите, вы можете получить это с помощью функции COUNT (*).
Это работает с моей базой данных Informix, для других реализаций может потребоваться некоторая настройка.