避免在非常大的sql select语句上超时的最佳方法是什么?
List<int> klienter = FundneKlienter.Keys.ToList();
if (klienter.Count > 0)
{
Dictionary<int, String> klientNavne = new Dictionary<int, string>(klienter.Count);
String sql = "SELECT [0],[1] FROM [Tabel] WHERE [0] IN " + klienter.ToSqlList();
using (SqlCommand cmd = new SqlCommand(sql, _connection))
using (SqlDataReader sr = cmd.ExecuteReader())
if (sr.HasRows)
while (sr.Read())
klientNavne.Add(int.Parse(sr["0"].ToString()), sr["1"].ToString());
这&#34; klinter&#34;列表可以包含所有长度为4-5个长度的700万ID ID。
优化此查询的最佳方法是什么?
我在40.000+之后得到超时?我是大型SQL语句的新手。
告诉我你是否需要更多代码来帮助我。
答案 0 :(得分:1)
答案 1 :(得分:1)
Rahul上面的答案是一个很好的答案......你也可以选择你的查询 - 考虑索引等...