SQL连接查询字符串

时间:2013-11-02 09:36:12

标签: sql sql-server sql-server-2008

我有一个像下面这样的SQL脚本和一些变量

declare @endDate datetime
declare @whereClause nvarchar(MAX)

set @whereClause = ' where endDate < ''' + @endDate + ''''

这是SQL select语句:

select * form TableName

我想要做的是加入@whereClause和select语句,结果应该是

select * from TableNamewhere endDate < ''2013/11/2''

我已尝试使用以下语句加入两个字符串但我收到错误

  

'+'附近的语法不正确。

以下脚本有什么问题?或者我如何加入这两个字符串?

select * from TableName + @whereClause

1 个答案:

答案 0 :(得分:2)

您可以使用两个varchar变量来完成此操作;一个用于SELECT,一个用于WHERE子句。

即:

DECLARE @select AS nvarchar(max)
SET @select = 'SELECT * FROM TableName'

SET @select = @select + @whereClause