【发布时间】:2020-12-15 18:24:36
【问题描述】:
我毫不怀疑我错过了一些细节,但我不确定它是什么。这是查询:
DECLARE @START DATE, @END DATE, @MySQL VARCHAR(MAX)
SELECT @START = '12/1/2020'
SELECT @END = '12/10/2020'
SET @MySQL =
'SELECT * FROM OPENQUERY ([SERVERNAME], ''SELECT * FROM TABLE (NOLOCK) WHERE InitiatedDate BETWEEN ' + @Start + ' AND ' + @End + ')'
EXEC (@MySQL)
我收到此错误:
数据类型 varchar 和 date 在 add 运算符中不兼容
我用类似的查询测试了这种连接方法,它工作正常,没问题:
SET @MySQL =
'SELECT * FROM OPENQUERY ([SERVER], ''SELECT top ' + @X + ' * FROM TABLE'')'
EXEC (@MySQL)
【问题讨论】:
标签: concatenation sql-server-2014 openquery