asp中sql语句的模糊查询,只要有一个字相同就都显示
比如我的xlname字段有如下数据:九寨沟九寨九曲Sql语句为:selectxlnamefrom[test]wherexlnamelike'%"&key&"%'如果key...
比如我的xlname字段有如下数据:
九寨沟
九寨
九曲
Sql语句为:
select xlname from [test] where xlname like '%"&key&"%'
如果key为九就为显示出
九寨沟
九寨
九曲
如果key为九寨就为显示出
九寨沟
九寨
如果key为九寨沟就为显示出
九寨沟
我现在想实现如果key为九寨沟也搜索出
九寨沟
九寨
九曲
请问各位高手如何实现啊,十分感谢! 展开
九寨沟
九寨
九曲
Sql语句为:
select xlname from [test] where xlname like '%"&key&"%'
如果key为九就为显示出
九寨沟
九寨
九曲
如果key为九寨就为显示出
九寨沟
九寨
如果key为九寨沟就为显示出
九寨沟
我现在想实现如果key为九寨沟也搜索出
九寨沟
九寨
九曲
请问各位高手如何实现啊,十分感谢! 展开
展开全部
这也不算太难,思路可以这样:首先你把关键词拆分为单个的字符数组,然后使用一个循环拼接你的sql语句,过程可以是这样:
sql="select xlname from [test] where 1=2 "
for i=0 to unbound(arr)
sql2=sql2&"or xlname like '%"&arr(i)&"%' "
next
sql=sql&sql2
最后拼接的结果为:select xlname from [test] where 1=2 or xlname like '%"&九&"%' or xlname like '%"&寨&"%' or xlname like '%"&沟&"%'
这句sql语句就是你想要的结果了吧!
sql="select xlname from [test] where 1=2 "
for i=0 to unbound(arr)
sql2=sql2&"or xlname like '%"&arr(i)&"%' "
next
sql=sql&sql2
最后拼接的结果为:select xlname from [test] where 1=2 or xlname like '%"&九&"%' or xlname like '%"&寨&"%' or xlname like '%"&沟&"%'
这句sql语句就是你想要的结果了吧!
追问
提示
错误类型:
Microsoft VBScript 运行时错误 (0x800A000D)
类型不匹配: 'unbound'
追答
我提供给你的是思路,我的arr数组还需要你自己来处理得出。其实思路已经很清晰了,自己多思考下吧!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询