我想执行两列串联的查询,所以我做到了:
Select
Id, PtName + ' ('+Investigation+')' as PtName, Y, M, D, PtCode
From
DiagMain
但是,当我尝试参数化此查询时,它不起作用。
像这样:
declare @Query nvarchar(MAX)
set @Query = 'Select Id, PtName + ''( +''Investigation''+ )'' as PtName, Y, M, D, Sex, PtCode FROM DiagMain'
Exec(@Query)
我在这里做错了什么?
最佳答案
您的单引号放错了位置,应放在方括号(
和)
中:
set @Query = 'Select Id, PtName + ''('' +Investigation+ '')'' as PtName, Y, M, D, Sex, PtCode FROM DiagMain'
您可以使用print命令来调试它:
print @Query
关于sql - 如何在SQL Server中使用特殊字符对查询进行参数化?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45729886/