sql语句模糊查找的问题

sql语句模糊查找的问题
比如内容为123456(只是个假如)
模糊搜索为123能搜索出来内容,搜索134怎样能搜索出来
怎样使用这个通配符
要用asp代码

你的意思是说,如果搜索145也能出来,或则126也能出来?所谓模糊查询,意思就是查询字符串是目标字符串的子集,而134,或145本来就不属于123456,思路本来就不对,是实现不了的。
一个做法就是你可以试下把查询字符先拆分为单独字符,再用 or 条件链接起来模糊查询,也就是查125的话就 列名 like '%1%' or 列名 like '%2%' or 列名 like '%3%'
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-08-21
select * from 表名 where 列名 like '%12%'
这就是模糊查询,不管什么语言只要是存入数据库,这模糊查询都可以使用的追问

这个是不行的,假如你搜12,能搜出1234 12567 12389等内容,但是不能搜出 1324 1567,我要的是能搜出1也能搜出2来

第2个回答  2013-08-21
select *from 表名 --查询你要查找的表
where 列名='%123456%' --%代表多个字符,你如果不确定前面或者后面有多少个字符就加上%追问

这个是不行的,假如你搜12,能搜出1234 12567 12389等内容,但是不能搜出 1324 1567,我要的是能搜出1也能搜出2来

追答

照你上面的意思,就是在12里加个%?像“%1%2%” ,是不是这个意思?

追问

是这个意思,但是那个12是keywords这个变量,1和2不是单独的变量里面的值,所以是不能写成%1%2%,要不然就成了%&keywords&%&keywords&%,这样就是%12%12%

第3个回答  2013-08-21
select * from table where 栏位 like '%1_34%' 一个下划线代表一个未知的字符,
请采纳!追问

1_34期中1和34其实都是keywords这个变量,直接写成&keywords_&keywords,这么写?那样的话就是搜索1 134了,就不是134了,多了个1

追答

like &dd || '_' || &ff || '%' 用连接符连接起来,并用不同的变量来区分头和尾! 望采纳!

追问

变量是一样的,代码给你看看

搜索的内容123这三个数不一定是挨着的如果内容是13524也能搜出来 

追答

你要收索多少个确定的值就用多少个变量,然後用连接符连接起来!不然没法实现!

追问

这个是怎么实现的

相似回答