0

我在 C# SQL Server 中编写了一个搜索功能,我的用户可以选择多个作业组,并且此功能应该检查我的作业表中所有选定的组 ID,我如何在 SQL Server 中执行循环操作?这是我的表一般架构:

id int, jobname varchar, jobgroup int.....

我使用以下查询来选择我的工作(基于工作组):

select * from tblJobs where jobgroup='"+userGroups+"'

仅当 userGroups 包含一个值时才适用,但我的用户可以选择多个组 id,例如我的 userGroups 可以是这样的:5,7,10,20(userGroups 可以包含更多值)

我应该如何在我的查询中执行循环操作,以便我可以拥有所有匹配的作业?我应该连接几个查询的返回值,每个查询都选择一个组 ID?我认为有更好的方法

4

1 回答 1

1

不要在 SQL 中使用循环 - 循环往往会降低 SQL 数据库的性能。

在这种情况下,我相信该IN条款可以做到:

SELECT col1, col2 
FROM tblJobs 
WHERE jobgroup IN ('"+userGroups+"', '"+userGroup2+"')
于 2012-11-03T14:25:16.500 回答