sql中使用select * from table where name like....语句就行模糊搜索
但是需要匹配的项比较多,就是name中必须包含所有的才能算是符合要求的,比如说name中必须包含N个字符串才能算是满足要求(N不是固定的),这N个字符串是$string[...
但是需要匹配的项比较多,就是name中必须包含所有的才能算是符合要求的,比如说name中必须包含N个字符串才能算是满足要求(N不是固定的),这N个字符串是$string[0]到$string[N-1],那么这一句select语句该怎么写呢
展开
1个回答
展开全部
有先后顺序或者是交叉么?
比如必须是$string[0]到$string[N-1],反过来则不行
比如ABCDE可以但是EDCBA不行。
有没有交叉,比如第一个字符串是ABC,第二个是BCD
ABCBCD肯定可以,但是ABCD呢,可以么?
如果后者都不行,也就是说有一定顺序而且不交叉,那么就like ‘%A%C%D%’类似这样的就行,当然你也可以使用_或者利用正则,这个就看你的需求了。
如果有交叉也行,或者不用管顺序,那就麻烦了,就算你的n再固定,我估计效率也慢的吓人。
比如必须是$string[0]到$string[N-1],反过来则不行
比如ABCDE可以但是EDCBA不行。
有没有交叉,比如第一个字符串是ABC,第二个是BCD
ABCBCD肯定可以,但是ABCD呢,可以么?
如果后者都不行,也就是说有一定顺序而且不交叉,那么就like ‘%A%C%D%’类似这样的就行,当然你也可以使用_或者利用正则,这个就看你的需求了。
如果有交叉也行,或者不用管顺序,那就麻烦了,就算你的n再固定,我估计效率也慢的吓人。
更多追问追答
追问
顺序没有关系,主要是表中的name中必须有所有的字符串才行,但是字符串的数目是不固定的,所以不知道该怎么写
追答
顺序不固定,交叉也没关系,只要有全部的字符串就行,而且字符串的数目还不固定,这个真的没办法写了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询