有没有办法将参数加入表?

时间:2017-05-16 22:37:03

标签: tsql join parameters ssms

根据我在网上研究的内容,不确定这是否可行。但只是想检查一下。

如果我有一个参数,例如:

[People]

我有一张名为SELECT * FROM [People] t1 JOIN @Person t2 ON (t1.ID = t2.ID) 的桌子,那么我可以将两者结合在一起吗?

类似的东西:

{{1}}

这样的事情是否可能?如果是这样,有人可以提供语法或例外吗?

1 个答案:

答案 0 :(得分:0)

使用此样本数据:

CREATE TABLE dbo.People (id int, peopleInfo nvarchar(4000));
INSERT dbo.People VALUES (123, 'joe'), (223, 'sally'), (323, 'Mary');

你可以这样做:

declare @Person nvarchar(4000) = '323'

SELECT t1.* 
FROM dbo.People t1 
JOIN (VALUES (@Person)) t2(id) ON t1.ID = t2.ID;

但为什么不这样做?

SELECT t1.* 
FROM dbo.People t1 
WHERE t1.id = @Person;