要查询数据库表格中的内容,多关键字查询,例如:有三个字段名“树种”、“单位”、“岸别”,同时输入三个关键字“柳树”、“菏泽市局”、“右岸”,要把表中三个字段名下的值同时分别满足这三个关键字的内容都显示出来,怎么办啊?
if ("flanglin"==Request("quyu"))
                {                 SQL = "Select * from qfanglanglin where 树种  like '%" + keywords + "%' or 单位  like '%" + keywords + "% or 岸别 like  '%"+keywords+"%'";
              rs = conn.Execute(SQL);
                 Response.write("情况表中 防浪林 查询结果如下");
                   rstotab(rs);
           conn.close();
                 
                }
现把有关查询部分的程序附上,但该程序仅能实现一个字段值的单关键字查询,要实现多关键字查询咋办阿?急急急!!!!!!!!!!!!!!!!!!!

解决方案 »

  1.   

    SQL="Select * from qfanglanglin where (树种 like '%"+keywords+"%') or (单位 like '%"+ keywords+"%') or (岸别 like '%"+keywords+"%')";
      

  2.   

    首先,你给出的代码不是“同时分别满足”,而是“满足任何一个”条件,如果是“同时分别满足”要把or换成and其次,如果是多关键字,就是把查询语句写的复杂一点了……多用几个and
      

  3.   

    Condition="Select * From xxx Where 1=1 "
    然后根据分析传入的数据规则,得到parameters数量
    再组合语句
    for i=0 to parameters number
    Condition=Condition & " And keyword like '%" parameter(i) &"%'"
    nextRs.open
      

  4.   

    重申一下,我的意思是:要查询到同时满足树种为柳树,岸别为右岸,且单位为菏泽市局的内容。
    另外athossmth 和suifengly能不能说明白点啊?小妹刚出道,水平很有限阿.parameters是啥?咋使阿?
      

  5.   

    SQL="Select * from qfanglanglin where (树种 like '%"+keywords+"%') and (单位 like '%"+ keywords+"%') and (岸别 like '%"+keywords+"%')";
      

  6.   

    在这里写要吐血了,QQ:248461 你加我吧,写上Come from CSDN
    刚才研究blog.csdn.net的病毒,折腾了半个多小时才研究好清理干净。