没时间做,给出一种方案:
   1、初始化SqlCommand、SqlConnection,获取数据表至DataTable,查询多次,本地缓冲,效率高点。
   2、关键字分割网站推广为一维字符串数组keys[],n个关键字,用两个函数求出1至n个关键词的全部组合,由于m个关键字的组合可能若干种,每种都是一个二维数组(每行是一个组合),所以存至三维交错数组,方法如下:
   string[][][] allKeys=new string[n][][]();
   void fun1()
   {
      for(int i=0;i<keys.Length;i++)
      {
         fun2(i);
      }
   }
   void fun2(int m)
   {
     对n个关键词求m个的组合,自己编写,记得要初始化allKeys的**、三维。
    }
  3、利用上述三维字符数组,从n到1个关键词的顺序,构网站关键词排名造like子句(n 乘以 n中取m个组合数 个子句)。
  4、定义DataTable的DataView,一次设置其RowFilter属性为上述有序的
like子句
***********************************************************
补充:
    求固定位的组合。下面是一种用递归的做法:
    int mt=m;
    int k=n!/m!;//n中取m的组合数,不会再要求我写求n!的程序了吧?
    allKeys[mt]=new string[k][]();
    allKeys[mt][k]=new string[mt]();
以上是本问题必要的初始化。下面求n中取m的一个组合。
    void combination(int n,int m)
    {
      int   i;   
      for   (i   =   n;   i   >=   m;   --i)   {     
          allKeys[mt][k][m]=keys[i];
          if   (m   >   0)   
              combination(i-1,m-1);   
          else   
              return;
      }   
  }
更好的方法工作人员团队扶持 你们搞到的不**是网页,而是本公司全面研发工作员工团队的撑持。各位朋友不要求有那么多的专业的网络平台技术从网站设计到长期关注服务都为全部操作服务。SQL多个关键字模糊查询(同一字段中)如何让尽量多的关键字相匹配我企业六年网站推广经验丰富同时积累了更多的网络推广专注与技术,网站推广本公司拥有一支 锲而不舍 、百折不回、敢于创新、业精于勤、行成于思、自强不息 , 同心同德 、兢兢业业、的团队。公司的制作网站得注重我们本身高科技的顾客大众 利用各类表面和用户维持沟通、吸收着我们自身的客户长期地和企业网页实施彼此了解也许起到广而告之的见效。