有1-4的规律,可是就是不知道怎么加进去~~~~
if (!materiel1.equals("")){
sql1="select * from a nolock where substring(aufnr,1,1)='n' and bdmng>0";
sql1=sql1+ " and convert(int,matnr)='" + materiel2 + "'";
sql1=sql1+ " and substring(aufnr,4,5) >='" + tempstart_date + "'";
sql1=sql1+ " and substring(aufnr,4,5) >='" + tempend_date + "'";
}
if (!materiel2.equals("")){
sql2="select * from a nolock where substring(aufnr,1,1)='n' and bdmng>0";
sql2=sql2+ " and convert(int,matnr)='" + materiel2 + "'";
sql2=sql2+ " and substring(aufnr,4,5) >='" + tempstart_date + "'";
sql2=sql2+ " and substring(aufnr,4,5) >='" + tempend_date + "'";
}if (!materiel3.equals("")){
sql3="select * from a nolock where substring(aufnr,1,1)='n' and bdmng>0";
sql3=sql3+ " and convert(int,matnr)='" + materiel3 + "'";
sql3=sql3+ " and substring(aufnr,4,5) >='" + tempstart_date + "'";
sql3=sql3+ " and substring(aufnr,4,5) >='" + tempend_date + "'";
}
if (!materiel4.equals("")){
sql4="select * from a nolock where substring(aufnr,1,1)='n' and bdmng>0";
sql4=sql4+ " and convert(int,matnr)='" + materiel4 + "'";
sql4=sql4+ " and substring(aufnr,4,5) >='" + tempstart_date + "'";
sql4=sql4+ " and substring(aufnr,4,5) >='" + tempend_date + "'";
}

解决方案 »

  1.   

    好算看明白了  循环对materiel 数组元素判断
      

  2.   

    for (i=1;i<=4 i++)
    {        sql[i]="select * from a nolock where substring(aufnr,1,1)='n' and bdmng>0";
    sql[i]=sql3+ " and convert(int,matnr)='" + materiel3 + "'";
    sql[i]=sql3+ " and substring(aufnr,4,5) >='" + tempstart_date + "'";
    sql[i]=sql3+ " and substring(aufnr,4,5) >='" + tempend_date + "'";
    }
    至于materiel也要循环判断是否为空。楼主记得结贴给分哦
      

  3.   

    是这样的
    我有四个变量分别为materiel1,materiel2,materiel3,materiel4
    根据这四个变量要生成四个sql语句sql1,sql2,sql3,sql4
    看出命名来了吗,很有规律(刻意的),就是想让通过类似循环的语句生成sql语句,可这个循环不会写
    int i;
    String materiel;
    for(i=1;i<5;i++)
    {
    if(materiel+(i).equals("")){
    sql+(i)="select * from a nolock where substring(aufnr,1,1)='n' and bdmng>0";
    sql+(i)=sql+(i)+ " and convert(int,matnr)='" + materiel+(i) + "'";
    sql+(i)=sql+(i)+ " and substring(aufnr,4,5) >='" + tempstart_date + "'";
    sql+(i)=sql+(i)+ " and substring(aufnr,4,5) >='" + tempend_date + "'";
    }
    }类似这样的循环,不过这个循环肯定不对了