如何使用查询显示 1 到 100 个数字

How to display 1 to 100 numbers with using query

我想编写一个查询来打印 MySQL 中从 1 到 100 的数字,但我似乎找不到任何解决方案。 我尝试了一些东西

with CTE as  
(  
 select 1 Number  
 union all  
 select Number +1 from CTE where Number<100  
)  

select *from CTE  

但我认为它在 MySQL

中不起作用

如果您使用的是 MySQL 8+,那么您当前的语法相距不远,甚至可能有效:

WITH RECURSIVE cte (Number) AS (
    SELECT 1            -- base case returns 1
    UNION ALL
    SELECT Number + 1   -- recursive case returns 1 + previous value
    FROM cte
    WHERE Number < 100
)

SELECT Number
FROM cte
ORDER BY Number;

递归 CTE 的工作原理是有一个基本案例,它为一个或多个值设定种子,以及一个递归案例,这是对先前值的迭代。