admin

SQL选择没有表的n记录

sql

有没有一种方法可以选择特定数量的行而不创建表。例如,如果我使用以下内容:

SELECT 1, 2, 3, 4, 5, 6, 7, 8, 9, 10

它将给我10个,我想要10个新行。

谢谢


阅读 130

收藏
2021-05-10

共1个答案

admin

您可以使用递归CTE在T-
SQL中生成任意数字序列,如下所示:

DECLARE @start INT = 1;
DECLARE @end INT = 10;

WITH numbers AS (
    SELECT @start AS number
    UNION ALL
    SELECT number + 1 
    FROM  numbers
    WHERE number < @end
)
SELECT *
FROM numbers
OPTION (MAXRECURSION 0);
2021-05-10