数据总览:
前面介绍的过滤是针对数据中的已知值进行过滤的。
如果需要过滤符合条件的未知值的话,就需要用到通配符了。通配符是用来匹配值的一部分的特殊字符。通配符本质上是SQL中的WHERE子句中有特殊含义的字符。通配符搜索只能用于文本字段(字符串)。非文本数据类型字段不能用通配符搜索。
百分号(%)通配符
SELECT prod_id, prod_name
FROM products
WHERE prod_name LIKE 'Fish%';
这个例子的搜索模式是 ‘Fish%’ ;在执行这条子句时,将检索任意以Fish开头的词。%告诉DBMS接受Fish之后的任意字符,不管它有多少字符。
通配符可在搜索模式中的任意位置使用,并且可以匹配多个通配符。
例子
SELECT prod_id, prod_name
FROM products
WHERE prod_name LIKE '%bean bag%';
搜索模式 ‘%bean bag%’ 表示匹配任何位置上包含文本bean bag的值,不论它之前或之后出现什么字符。
通配符也可以出现在搜索模式的中间。
例子
SELECT prod_id, prod_name
FROM products
WHERE prod_name LIKE 'F%y';