Попробуйте вариант таблица целых чисел . Это взято из Xaprb :
create table integers(i int unsigned not null);
insert into integers(i) values (0), (1), (2), (3), (4), (5), (6), (7), (8), (9);
select (hundreds.i * 100) + (tens.i * 10) + units.i as iii
from integers as units
cross join integers as tens
cross join integers as hundreds;
Если вы сделали этот последний select
вид с именем, скажем, xrange999
, то вы можете просто:
SELECT iii FROM xrange999 WHERE iii BETWEEN 0 AND 9
(конечно, вы можете сделать это с помощью таблицы из десяти строк integers
, но я считаю, что тысяча целых чисел немного полезнее.)