2015-10-06 69 views
2
DECLARE @Companies_List char(25) 
SET @Companies_List = ('Amazon','Google','Facebook') 

select * 
from companies 
where name in @Companies_List 

我是SQL Server的新手。我試圖創建一個包含我想在SQL where子句中使用的值的全局集合,但顯然上面的腳本不起作用。任何想法我應該怎麼做?非常感謝!在sql server中創建全局變量列表/集合

+0

表變量答案是一個好主意。表定義與你聲明爲'char(25)'的變量匹配。我建議使用'varchar(25)'代替。 – Morpheus

回答

3

我會創造一個TABLE變量和這樣的名單做一個JOIN它:

DECLARE @Companies_List TABLE 
(
    Name Char(25) 
) 

INSERT @Companies_List (Name) 
VALUES ('Amazon'), ('Google'), ('Facebook') 

SELECT C.* 
FROM Companies  C 
JOIN @Companies_List CL ON C.Name = CL.Name 

如果你想更具體的東西,你應該做一個物理TABLE

+0

太棒了!謝謝! –