我喜欢将月份号与用于构建表名的文本连接起来。例如,我正在尝试检索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 '+'.
这种语法有什么问题?
谢谢,
赛义德
答案 0 :(得分:0)
你需要为此构建动态sql,
之类的东西declare @sql varchar(200)
set @sql= 'select * from webproxylog + ' + cast(month(dateadd(m,-2,getdate())) as varchar(2))
exec(@sql)