同时查询同一字段里不同的数据(只有一个查询条件框)
老师:我想在一个查询条件框中同时输入我想查询的信息后(可用逗号呀之类的隔开),在某字段符合我查询的数据(只有一个查询条件框)就可以查出来,请问老师,怎么实现?
比如有下表,表名:table
xh fp
01 1111
02 2222
03 1122
04 1111
05 2222
...............
查询条件框名称为:finefp
当我在查询框finefp中同时输入1111、1122(逗号呀等隔开均可)或更多的条件,在查询结果表里就会只有1111和1122的信息,请问老师,怎么修改以下程序才能实现这样的功能?
<input name="finefp" type="text" id="finefp"><input type="submit" name="Submit" value="查询">
<%
set rs=Server.CreateObject("ADODB.RecordSet")
sql="select id,fp from table where fp like '%"&trim(request("finefp"))&"%'"
rs.open sql,conn,1,1
%>
if instr(finefp,",") then
str =split(finefp,",")
sql ="sql ="select id,fp from table where"
for i=0 to ubound(str)
sql =sql&" and fp like '%"&str(i)&"%'"
next
sql =sql &" order by id desc"
else
sql="select id,fp from table where fp like '%"&trim(request("finefp"))&"%'"
end if
set rs=Server.CreateObject("ADODB.RecordSet")
rs.open sql,conn,1,1
试试这样 <input name="finefp" type="text" id="finefp"><input type="submit" name="Submit" value="查询">
<%
set rs=Server.CreateObject("ADODB.RecordSet")
sql="select id,fp from table where fp in ("&trim(request("finefp"))&")"
rs.open sql,conn,1,1
%>
fp如果是数字就可以按上面的方法写用in操作符
比如
select id,fp form table where fp in (111,222,333,556,666)
注意
select id,fp form table where fp in (111,222,333,556,666,)
这样写是错误的因为in语句最后一个数值后面不能有,号也就是说666后面不能有,号 太感谢了老师们!
页:
[1]
