标题:多关键字多字段查询
只看楼主
zhonyijun
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2011-12-10
结帖率:0
已结贴  问题点数:20 回复次数:5 
多关键字多字段查询
查询表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
   
求求各位高手指教!小弟万分感谢!
搜索更多相关主题的帖子: 字母 
2011-12-10 15:19
cnfarer
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:179
帖 子:3330
专家分:21157
注 册:2010-1-19
得分:20 
在where子句中用组合条件进行查询.你这样的查询方法似乎不太合理

[ 本帖最后由 cnfarer 于 2011-12-10 15:32 编辑 ]

★★★★★为人民服务★★★★★
2011-12-10 15:24
zhonyijun
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2011-12-10
得分:0 
回复 2楼 cnfarer
麻烦斑竹给点代码,谢谢了!
2011-12-10 15:27
cnfarer
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:179
帖 子:3330
专家分:21157
注 册:2010-1-19
得分:0 
输入的时候可以输入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'

★★★★★为人民服务★★★★★
2011-12-10 15:37
zhonyijun
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2011-12-10
得分:0 
keys = {"key1","key2","key3","key4"}; //key的数组
这种办法能实现吗??
感觉这里没什么人气啊!!!!!!!!!!
2011-12-10 16:10
zhonyijun
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2011-12-10
得分:0 
查询表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
   
求求各位高手指教!小弟万分感谢
2011-12-11 14:10



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-357451-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.049312 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved