mysql用通配符进行过滤

mysql用通配符进行过滤

通配符:用来匹配值得一部分的特殊字符
搜索模式:由字面值、通配符或两者组合构成的搜索条件
LIKE操作符:为在搜索子句中使用通配符,必须使用like操作符。指示mysql,其后跟的搜索模式利用通配符匹配而不是直接相等匹配进行比较。

百分号 % 通配符 :表示任何字符(包括0个字符 )出现任意次数。特殊:注意 % 不能匹配NULL空值!

1. 找到所有以词jet起头的产品

SELECT prod_id,prod_name FROM products WHERE prod_name LIKE 'jet%';

结果:

+---------+--------------+
| prod_id | prod_name    |
+---------+--------------+
| JP1000  | JetPack 1000 |
| JP2000  | JetPack 2000 |
+---------+--------------+
2 rows in set (0.05 sec)

2. 通配符可以在搜索模式任意位置使用

SELECT prod_id,prod_name FROM products WHERE prod_name LIKE '%anvil%';

结果:

+---------+--------------+
| prod_id | prod_name    |
+---------+--------------+
| ANV01   | .5 ton anvil |
| ANV02   | 1 ton anvil  |
| ANV03   | 2 ton anvil  |
+---------+--------------+
3 rows in set (0.00 sec)

3. 匹配所有以s开头e结尾的值

SELECT prod_name FROM products WHERE prod_name LIKE 's%e';

结果:

+-----------+
| prod_name |
+-----------+
| Safe      |
+-----------+
1 row in set (0.00 sec)

4. 下划线_通配符

匹配一个字符,不能多不能少。

SELECT prod_id,prod_name FROM products WHERE prod_name LIKE '_ ton anvil';

结果:

+---------+-------------+
| prod_id | prod_name   |
+---------+-------------+
| ANV02   | 1 ton anvil |
| ANV03   | 2 ton anvil |
+---------+-------------+
2 rows in set (0.00 sec)

你可能感兴趣的:(MySQL,mysql,sql,数据库)