如何在SQL的WHERE语句中使用一组字符串?

Nur*_*ihu 0 c# sql-server select sql-server-2008

对不起,我不知道如何很好地标题.我想在sql中选择一些特定列是一组字符串的记录.

例子.我有一个表学生,并且有列ID和名称.ID有1,2,3,4,5,6的记录.NAme具有A,B,C,D,E,F.

我想返回C,D,E WHERE ID = [3,4,5].

我试过了

SELECT FROM student WHERE ID=2,3,4
Run Code Online (Sandbox Code Playgroud)

它给出了错误ID =2,3,4 ='2,3,4',它将ID作为单个列读取.我很迷惑.

同样在我的例子中,ID set在storedprocedure变量中返回.就像@ID一样

SELECT * FROM STUDENT WHERE ID=@ID 
Run Code Online (Sandbox Code Playgroud)

上面的@ID是一个包含集合{1,2,3}的字符串类型的变量.请任何帮助将不胜感激.

Rag*_*ull 5

试试这个:

SELECT * FROM student WHERE ID IN (2,3,4)
Run Code Online (Sandbox Code Playgroud)

句法:

test_expression IN 
    ( subquery | expression [ ,...n ]
    ) 
Run Code Online (Sandbox Code Playgroud)

了解更多关于运营商这里.