注册 登录
编程论坛 ASP技术论坛

多关键字多字段查询

zhonyijun 发布于 2011-12-10 15:19, 723 次点击
查询表sanXding_type如下:
id          allowinvite

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

<form name="form1">
<input value="" type="text" size="5">123 ------只查询allowinvite的开头一个字母
<input value="" type="text" size="5">345 ------只查询allowinvite的第二个字母
<input value="" type="text" size="5">567 ------只查询allowinvite的第三个字母
<input value="" type="text" size="5">8 ------只查询allowinvite的最后一个字母
<input type="submit" name="Submit" value="查询" /></form>

查询结果: 1358
           3358
           1468
           1568
   
求求各位高手指教!小弟万分感谢!
5 回复
#2
cnfarer2011-12-10 15:24
在where子句中用组合条件进行查询.你这样的查询方法似乎不太合理

[ 本帖最后由 cnfarer 于 2011-12-10 15:32 编辑 ]
#3
zhonyijun2011-12-10 15:27
回复 2楼 cnfarer
麻烦斑竹给点代码,谢谢了!
#4
cnfarer2011-12-10 15:37
输入的时候可以输入1,2,3这样的格式不要123否则处理时就不太方便了
在提交的时候生成一个SQL语句类似:
select * from ... where substring(allowinvite,1,1) in (1,2,3) and substring(allowinvite,2,1) in (3,4,8) and substring(allowinvite,3,1) in (5,6,7) and substring(allowinvite,4,1)='8'
#5
zhonyijun2011-12-10 16:10
keys = {"key1","key2","key3","key4"}; //key的数组
这种办法能实现吗??
感觉这里没什么人气啊!!!!!!!!!!
#6
zhonyijun2011-12-11 14:10
查询表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