SQL-LIKE搜索值列表

时间:2013-12-13 07:57:31

标签: sql

我有需要搜索的值列表。

select * 
from table 
where fname in ('%abc%','%nnn%') or 
      lname in ('%abc%','%nnn%')

最好的方法是什么?我知道我们不能一起使用“LIKE”和“IN”。

3 个答案:

答案 0 :(得分:3)

SELECT * FROM table WHERE fname LIKE '%abc%' OR fname LIKE '%nnn%' OR lname LIKE '%abc%' OR lname LIKE '%nnn%'

答案 1 :(得分:1)

如果您接受,这也是一种很好的方法,

select * 
from table 
where 
fname in (select fname from table where fname like '%abc%' or fname like '%nnn%') or 
lname in (select lname from table where lname like '%abc%' or lname like '%nnn%')  

答案 2 :(得分:0)

您可以使用多个LIKE谓词与OR结合使用,或者您可以检查数据库系统是否提供REGEX功能。