MySQL“不喜欢”查询多个通配符

时间:2015-04-22 05:04:05

标签: mysql wildcard sql-like

我正在寻找一种更简单的方法来执行多通配符NOT LIKE查询。

SELECT * from table 
  WHERE name NOT LIKE 'a1%' 
    AND name NOT like 'a2%'
    AND name not like 'a3%' .... etc 

我需要将NOT LIKE A{number}%F{number}%相匹配(从我的搜索结果中删除以[a-f]开头的所有内容,后跟一个数字)。

我尝试了各种

的组合
AND name NOT LIKE '[a-f][0-9]%'

但是没有成功。

1 个答案:

答案 0 :(得分:0)

你可以在mysql中使用regexp而不是like,试试这个:

select * from table where name not regexp '^[a-f][0-9]'

快速演示:http://sqlfiddle.com/#!9/c5630/1