Suppose MYSQL has a database, and it has a table pet.
+ --------- + ------------- + ------ + ----- + --------- + ------- +
| Field | Type | Null | Key | Default | Extra |
+ --------- + ------------- + ------ + ----- + --------- + ------- +
| Name | varchar (20) | YES | NULL |
| Owner | varchar (20) | YES | NULL |
| Species | varchar (20) | YES | p NULL |
| Sex | char (1) | YES | NULL |
| Birth | date | YES | NULL |
| Death | date | YES | NULL |
+ --------- + ------------- + ------ + ----- + --------- + ------- +
One is standard matching of SQL.
Query all records whose names start with B:
Select * from pet where name like 'B % ';
Here '%' is similar to '*' in windows, while '_' is similar '? '.
The other is regular expression matching.
For example, you can query the pet.
Select * from pet where owner regexp '^ Chen ';
Or select * from pet where owner rlike '^ Chen ';
Find out if the pet name is exactly 4 characters long.
Select * from where name rlike '^ {4} $ ';
Or select * from where name rlike '^... $ ';
These are similar to regular expressions.