MySQL的正则表达式的LIKE和REGEXP区别

时间:2022-08-27 01:11:50

LIKE匹配整个列。如果被匹配的文本在列值 中出现,LIKE将不会找到它,相应的行也不被返回(除非使用 通配符)。而REGEXP在列值内进行匹配,如果被匹配的文本在 列值中出现,REGEXP将会找到它,相应的行将被返回。 《MySQL必知必会》

比如,在以下的学生信息表中,用LIKE和REGEXP操作Sno来找出张无忌的信息

MySQL的正则表达式的LIKE和REGEXP区别

 

使用LIKE的话还有用到通配符

SELECT * FROM STU WHERE SNO LIKE '%108'; 

或者,SELECT * FROM STU WHERE SNO LIKE '20162180108';

 

但是,如果使用正则的话,就直接 SELECT * FROM STU WHERE SNO REGEXP '108'; 这样的操作即可!

MySQL的正则表达式的LIKE和REGEXP区别