【发布时间】:2014-10-03 21:00:43
【问题描述】:
我有一个包含 ID 的列表 List<Int32>,并想从另一个表中选择一些值,其中 id=ids[0],ids[1],...
看起来像这样:
string query=String.Format("@ SELECT values from Table WHERE id=???");
如何得到结果?
附:我听着——这种方式是不对的。
所以,另一种方法是使用 Join:
string queryString = String.Format(@" SELECT * FROM Table1 [t1]
join [Table2] [t2]
on [t1].idTable1=[t2].id where [idParamValue]={0}", idParamValue);
那么,我应该使用:
using (var sqlCmd = new SqlCommand(queryString, _connection))
{
using (var sqlReader = sqlCmd.ExecuteReader())
{
while (sqlReader.Read())
{
var param1=(String)sqlReader["param_name"];
}
}
}
谢谢!
【问题讨论】:
-
您运行的是什么版本的sql,如果您使用的是Sql2008或更高版本,解决此更改的方法。
-
您需要的是“加入”另一个表。 w3schools.com/sql/sql_join.asp
-
您是否在应用程序中使用实体框架?
-
问题不够清楚......根据你的问题可以在stackoverflow.com/questions/5803472/sql-where-id-in-id1-id2-idn找到答案
标签: c# sql sql-server-2008-r2