Для MySql 5.x
Создать таблицу подсчета с положительными числами, включая 0.
Затем самостоятельно присоединитесь к этой таблице номеров.
select n1.n as num
from nums as n1
join nums as n2 on n2.n < n1.n
where n1.n between 1 and 100
order by n1.n;
Пример создания такой таблицы номеров:
CREATE TABLE digits (n int primary key not null);
insert into digits (n) values
(0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
CREATE TABLE nums (n int primary key not null);
-- fill with numbers 0 to 999
INSERT INTO nums (n)
SELECT (d3.n*100 + d2.n*10 + d1.n) as num
FROM digits d1
CROSS JOIN digits d2
CROSS JOIN digits d3;
В MySql 8 вместо него можно использовать рекурсивный CTE
WITH RECURSIVE NUMS AS
(
SELECT 0 as n
UNION ALL
SELECT n+1
FROM NUMS
WHERE n < 100
)
SELECT n1.n
FROM NUMS n1
JOIN NUMS n2 ON n2.n < n1.n
ORDER BY n1.n;