日期:2014-05-17  浏览次数:20810 次

多字串组合查询问题
查询表sanXding_type如下:
id allowinvite

1 0356
2 1358
3 3358
4 1468
5 3456
6 1568


<%
key1=request("qian")
key2=request("bai")
key3=request("shi")
key4=request("ge")
key="%"+key1+"%"+key2+"%"+key3+"%"+key4+"%"
Set res=Server.CreateObject("ADODB.RecordSet") 
sql="select * from sanXding_type where allowinvite like '"&key&"' order by id desc"
%>
<form name="form1">
<input value="" name="qian" type="text" size="5">123 ------只查询allowinvite的开头一个字母
<input value="" name="bai" type="text" size="5">345 ------只查询allowinvite的第二个字母
<input value="" name="shi" type="text" size="5">567 ------只查询allowinvite的第三个字母
<input value="" name="ge" type="text" size="5">8 ------只查询allowinvite的最后一个字母
<input type="submit" name="Submit" value="查询" /></form>

我想每个type="text"输入多个关键字查询,比如:
<input value="" name="qian" type="text" size="5">输入13
<input value="" name="bai" type="text" size="5">输入3
<input value="" name="shi" type="text" size="5">输入5
<input value="" name="ge" type="text" size="5">输入8
查询结果:
2 1358
3 3358
   
求求各位高手指教!小弟万分感谢!

------解决方案--------------------
下面我们来举例说明一下:
   例1,查询name字段中包含有“明”字的。
  select * from table1 where name like '%明%'
   例2,查询name字段中以“李”字开头。
  select * from table1 where name like '李*'
   例3,查询name字段中含有数字的。
  select * from table1 where name like '%[0-9]%'
   例4,查询name字段中含有小写字母的。
  select * from table1 where name like '%[a-z]%'
  例5,查询name字段中不含有数字的。
  select * from table1 where name like '%[!0-9]%'