MySQL用通配符进行过滤

通配符:用来匹配值的一部分的特殊字符
搜索模式:由字面值、通配符或者两者组合成的搜索条件
在搜索字句中使用通配符,必须使用LIKE操作符,LIKE操作符指示MySQL后跟的搜索模式是通配符匹配而不是直接相等匹配。
百分号%通配符:
表示任何字符串出现任意次数
1通配符位于搜索模式最后
SELECT prod_id,prod_name
FROM products
WHERE prod_name LIKE ‘jet%’;
检索以jet开头的词
2通配符位于搜索模式两端
SELECT prod_id,prod_name
FROM products
WHERE prod_name LIKE ‘%anvil%’;
匹配任何位置包含文本anvil的值
3通配符位于搜索模式中间
SELECT prod_name
FROM products
WHERE prod_name LIKE ‘s%e’;
匹配以s开头以e结尾的值
%可以匹配0个字符,代表搜索模式中给定位置的0个、1个或多个字符,例如WHERE prod_name LIKE ‘s%e’ 可以匹配se
%不匹配NULL
WHERE prod_name LIKE ‘%’;不能匹配用值NULL作为产品名的行
尾空格:尾空格可能会干扰通配符匹配,例如在保存词anvil时,如果后面有一个或多个空格(anvil name aa),WHERE prod_name LIKE ‘%anvil’ 将不会匹配它们,解决方法1:在搜索模式最后附加一个%,解决方法2:使用函数去掉首尾空格

下划线(_)通配符:
用途与%一样,但总是只匹配单个字符

使用通配符的注意事项:
1通配符搜索的处理所花时间长
2不要过度使用通配符
3在确实需要使用通配符时,尽量不要把通配符用在搜索模式的开始处。把通配符放在搜索模式的开始处,搜索起来是最慢的
4注意通配符的位置

你可能感兴趣的:(MySQL)