<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      分批拼接SQL IN 查詢需要的ID字段值,解決IN 查詢的ID過(guò)多問(wèn)題

      SQL查詢使用的IN條件字段很多的時(shí)候,會(huì)造成SQL語(yǔ)句很長(zhǎng),大概SQL語(yǔ)句不能超過(guò)8K個(gè)字符,也有說(shuō)IN不能超過(guò)1000個(gè)條件,總之太長(zhǎng)了不行,需要拆分條件分批處理。下面提供一個(gè)將Int類型的條件字段值進(jìn)行字符串拼接的方法。看代碼:

      class Program
          {
              static void Main(string[] args)
              {
                  int[] source = { 1,2,3,4,5,6,7,8,9,10};
                  ShowSource(source);
      
                  List<string> list = BatchJoinArray2String(source, 5).ToList();
                  ShowList(list);
      
                  List<string> list2 = BatchJoinArray2String(source, 3).ToList();
                  ShowList(list2);
      
                  Console.Read();
              }
      
              static void ShowSource(int[] source)
              {
                  string sourceStr = string.Join(",", source);
                  Console.WriteLine("Source Arrar:{0}", sourceStr);
              }
      
              static void ShowList(List<string> lst)
              {
                  foreach (string item in lst)
                      Console.WriteLine("\""+item+"\"");
                  Console.WriteLine("--------------------");
              }
      
              static IEnumerable<string> BatchJoinArray2String(int[] arrSource,int batchSize)
              {
                  if (batchSize <= 1) throw new ArgumentOutOfRangeException("batchSize 批處理大小不能小于1");
                 
                  if (arrSource.Length > batchSize)
                  {
                      int[] arr10 = new int[batchSize];
                      int j = 0;
                      for (int i = 0; i < arrSource.Length; i++)
                      {
                          if (j < batchSize)
                          {
                              arr10[j++] = arrSource[i];
                          }
                          else
                          {
                              j = 0;
                              string str = string.Join(",", arr10);
                              arr10[j++] = arrSource[i];
                              yield return str;
      
                          }
                      }
                      if (j > 0) //還有剩余
                      {
                          int[] arr0 = new int[j];
                          Array.Copy(arr10, arr0, j);
                          string str = string.Join(",", arr0);
                          yield return str;
                      }
                  }
                  else
                  {
                      string str = string.Join(",", arrSource);
                      yield return str;
                  }
              }
          }

      運(yùn)行這個(gè)示例程序,得到下面輸出:

      Source Arrar:1,2,3,4,5,6,7,8,9,10
      "1,2,3,4,5"
      "6,7,8,9,10"
      --------------------
      "1,2,3"
      "4,5,6"
      "7,8,9"
      "10"
      --------------------

       

      在你的程序中,可以像下面這樣使用:

       string sql_update=@"
      update t2 set 
        AA  =1 ,
        BB ='2222'
      FROM [MyTable] as t2 
      WHERE t2.[ID] in  ( @IDs );
      ";
      //每次更新50條記錄
                  using (SqlConnection conn = new SqlConnection(DefaultConnectionString))
                  {
                      conn.Open();
                      foreach (string ids in BatchJoinArray2String(XXXIds.ToArray(), 50))
                      {
                          string sql = sql_update.Replace("@IDs", ids);
                          SqlHelper.ExecuteNonQuery(conn, CommandType.Text, sql);
                      }
                    
                      conn.Close();
                  }

      該功能將集成在SOD框架中,敬請(qǐng)期待。

       

      posted on 2021-03-17 18:20  深藍(lán)醫(yī)生  閱讀(1225)  評(píng)論(2)    收藏  舉報(bào)

      導(dǎo)航

      主站蜘蛛池模板: 老熟妇乱子交视频一区| 亚洲av专区一区| 国内极度色诱视频网站| 中文一区二区视频| 国产精品视频午夜福利| 国产精品女生自拍第一区| 国产永久免费高清在线观看| 亚洲中文无码av永久不收费| 欧美日韩一线| 国产美女免费永久无遮挡| 日韩深夜免费在线观看| 亚洲另类激情专区小说图片| 激情综合色区网激情五月| 日本欧美大码a在线观看| 国产一区二区亚洲一区二区三区 | 人妻性奴波多野结衣无码| 成人精品一区二区三区四| 亚洲男人天堂2021| 老司机午夜精品视频资源| 成在线人免费视频| 饥渴少妇高潮正在播放| 亚洲一区二区精品极品| 欧美激情 亚洲 在线| 在线播放免费人成毛片| 乡宁县| 国产精品久久久久7777| 给我播放片在线观看| 欧美日韩一区二区三区视频播放| 汉川市| 国产视色精品亚洲一区二区| 欧美一本大道香蕉综合视频| 老司机免费的精品视频| 亚洲av无码一区二区三区网站| 国产偷窥厕所一区二区| 中文国产成人精品久久不卡| 欧美成人无码a区视频在线观看| 50路熟女| 久久人妻无码一区二区三区av| 亚洲18禁一区二区三区| 亚洲国产成人AⅤ毛片奶水| 福利视频在线一区二区|