asp sql 模糊查询 20
模糊查询:school表字段idschoolname1清华2北大3四川大学想输入:清华大学人体艺术学院查询,表里schoolname带清华就算满足条件请问sql怎么写?这...
模糊查询: school 表
字段 id schoolname
1 清华
2 北大
3 四川大学
想输入:清华大学人体艺术学院 查询,表里schoolname带清华就算满足条件 请问sql怎么写
?
这种不行:
sql="select * from schoolname where schoolname like '%"&KeyWord&"%'"
写错 这种是不行的:
sql="select * from school where schoolname like '%"&KeyWord&"%'"
就是查找:输入的字符串里带有 schoolname 字段里的 如:清华 或者 北大 或者 四川大学就算满足条件 怎么写呢? 展开
字段 id schoolname
1 清华
2 北大
3 四川大学
想输入:清华大学人体艺术学院 查询,表里schoolname带清华就算满足条件 请问sql怎么写
?
这种不行:
sql="select * from schoolname where schoolname like '%"&KeyWord&"%'"
写错 这种是不行的:
sql="select * from school where schoolname like '%"&KeyWord&"%'"
就是查找:输入的字符串里带有 schoolname 字段里的 如:清华 或者 北大 或者 四川大学就算满足条件 怎么写呢? 展开
展开全部
1,用数据库中字段的值去匹配 搜索关键字,而不是用搜索关键字去匹配数据库字段的值:
sql="select * from schoolname"
RS.Open sql, Conn, 1, 1
if Rs.eof then
response.writr ("暂时没有搜索到结果")
else
do while not rs.eof
if instr(KeyWord,rs("schoolname")) > 0 then
response.writr Rs("schoolname")
end if
Rs.MoveNext()
Loop
end if
这样运行速度估计会比较慢,比较机械化不是很人性
2,用split函数对KeyWord进行分词
分词可以新建一个字段(key),添加数据的时候就吧分词写进去如:
清华大学计算机专业 分词之后就是:清华,大学,计算机,专业
这个时候用split
split(rs(key),",")
然后去和 keyword 匹配,最智能了
sql="select * from schoolname"
RS.Open sql, Conn, 1, 1
if Rs.eof then
response.writr ("暂时没有搜索到结果")
else
do while not rs.eof
if instr(KeyWord,rs("schoolname")) > 0 then
response.writr Rs("schoolname")
end if
Rs.MoveNext()
Loop
end if
这样运行速度估计会比较慢,比较机械化不是很人性
2,用split函数对KeyWord进行分词
分词可以新建一个字段(key),添加数据的时候就吧分词写进去如:
清华大学计算机专业 分词之后就是:清华,大学,计算机,专业
这个时候用split
split(rs(key),",")
然后去和 keyword 匹配,最智能了
展开全部
LIKE 'Mc%' 将搜索以字母 Mc 开头的所有字符串(如 McBadden)。
LIKE '%inger' 将搜索以字母 inger 结尾的所有字符串(如 Ringer、Stringer)。
LIKE '%en%' 将搜索在任何位置包含字母 en 的所有字符串(如 Bennet、Green、McBadden)。
like的用法是这样的,我也是看到你这个查了下,你要使用怎么样的条件就选择什么样的模式就好了
LIKE '%inger' 将搜索以字母 inger 结尾的所有字符串(如 Ringer、Stringer)。
LIKE '%en%' 将搜索在任何位置包含字母 en 的所有字符串(如 Bennet、Green、McBadden)。
like的用法是这样的,我也是看到你这个查了下,你要使用怎么样的条件就选择什么样的模式就好了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
纯粹使用sql是无法达到效果的,你使用的asp 那么需要提交后使用asp按一定的规则截取字符串然后在进行sql查询
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sql="select * from school where schoolname like '%"&left(KeyWord,2)&"%'"
追问
这个只是在头2个字符是清华可以 其他位置就不行的额
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询