用通配符和正则表达式过滤

百分号(%)通配符
%表示任何字符出现任意次数

SELECT prod_id, prod_name FROM products WHERE prod_name LIKE 'jet%'
匹配prod_name字段里开头是jet的内容

通配符可在搜索模式中任意位置使用,并且可以使用多个统配符
SELECT prod_id, prod_name FROM products WHERE prod_name LIKE '%anvil%'

%通配符不能匹配NULL

(下划线通配符),下划线只匹配单个字符而不是多个字符
**SELECT prod_id, prod_name FROM products WHERE prod_name LIKE '
ton anvil'**

REGEXP(正则)

REGEXP,正则表达式的作用是匹配文本,将一个模式(正则表达式)与一个文本串进行比较
SELECT prod_id, prod_name FROM products WHERE prod_name REGEXP '1000'
匹配prod_name中文本包含1000的字段

REGEXP的OR操作,使用符号 |

SELECT prod_id, prod_name FROM products WHERE prod_name REGEXP '1000|2000'

REGEXP的[]匹配几个字符

SELECT prod_id, prod_name FROM products WHERE prod_name REGEXP '[123] Ton';
这里使用正则表达式的[123] Ton。 [123]定义一组字符,它的意思是匹配1或2或3
[^123] 除了123之外的字符
[0-9]匹配0到9之间的数字
[a-z]匹配小写英文字符

匹配特殊字符,使用转义符号\

posted @ 2020-09-23 11:00  bibicode  阅读(278)  评论(0)    收藏  举报