1

我正在尝试使用 sql 中的参数来获得“在哪里”工作。

SELECT * FROM tablename WHERE(name IN (@names))

所以我在 sqlmanager 中执行 SQL,并在@name 值中输入'Name1','Name2',当我被要求时。这样,查询返回 0 行。但是,如果我将 SQL 更改为:

SELECT * FROM tablename WHERE(name IN ('Name1','Name2'))

有用。

让它发挥作用的诀窍是什么?

这篇文章为我解决了这个问题:链接到帖子感谢所有回复:)

4

1 回答 1

0

请试试这个..

Declare @names varchar(150)
Set @names = '''Name1'',''Name2'''
Declare @str varchar(max) 
set @str = 'SELECT * FROM tablename WHERE(name IN ('+@names+'))'
Execute(@str)
于 2012-06-28T10:47:50.777 回答