using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication3 { class Program { static void Main(string[] args) { int totalCount = 50; int perCount = 1000; List<int> ids = new List<int>(); for (int i = 0; i < totalCount; i++) { ids.Add(i+1); } int cx = 0; bool first = true; StringBuilder tempsb = new StringBuilder(); StringBuilder sb = new StringBuilder(); for (int i = 0; i < totalCount; i++) { tempsb.Append(ids[i]+","); cx++; if (cx == perCount) { if (first == true) { sb.Append(" and id in (" + tempsb.ToString().TrimEnd(',') + ")"); first = false; } else { sb.Append(" or id in (" + tempsb.ToString().TrimEnd(',') + ")"); } cx = 0; tempsb.Clear(); } } if (tempsb.ToString() != "") { if (first == true) { sb.Append(" and id in (" + tempsb.ToString().TrimEnd(',') + ")"); first = false; } else { sb.Append(" or id in (" + tempsb.ToString().TrimEnd(',') + ")"); } } string sql = string.Format("select *from tb where 1=1 {0}",sb.ToString()); } } }