如何将月份编号连接到表名称中



我喜欢将月份编号与文本连接起来,以构建表名。例如,我试图检索2013年5月的数据,我想从webproxylog5中进行选择。

以下脚本

    select *
from webproxylog + '' + cast(month(dateadd(m,-2,getdate())) as varchar(2)) + ''

将导致以下错误消息:

Msg 170, Level 15, State 1, Line 4
Line 4: Incorrect syntax near '+'.

这个语法有什么问题?

谢谢你,

Seyed

您需要为此构建动态sql,类似的东西

declare @sql varchar(200) 
set @sql= 'select * from webproxylog + ' + cast(month(dateadd(m,-2,getdate())) as varchar(2)) 
exec(@sql)

最新更新