我需要类似的查询没有插入(SQL Server)

-4 sql sql-server temp-tables

我需要像这样选择整个月的查询

DECLARE @ano TABLE (
mes int
)
insert @ano (mes) values (1)
insert @ano (mes) values (2)
insert @ano (mes) values (3)
insert @ano (mes) values (4)
insert @ano (mes) values (5)
insert @ano (mes) values (6)
insert @ano (mes) values (7)
insert @ano (mes) values (8)
insert @ano (mes) values (9)
insert @ano (mes) values (10)
insert @ano (mes) values (11)
insert @ano (mes) values (12)
select * from @ano
Run Code Online (Sandbox Code Playgroud)

但我正在使用的程序不接受插入... D:

Zoh*_*led 7

如果只需要一个查询的12个数字表,则可以使用递归cte:

;WITH ano as
(
    select 1 as mes
    union all 
    select mes + 1
    from ano
    where mes < 12
)
Select mes from ano
Run Code Online (Sandbox Code Playgroud)

另一种选择是使用该values子句,如下所示:

SELECT *
FROM (
    VALUES
    (1), 
    (2), 
    (3), 
    (4), 
    (5), 
    (6), 
    (7), 
    (8), 
    (9), 
    (10), 
    (11), 
    (12)
) ano(mes)
Run Code Online (Sandbox Code Playgroud)