MySQL基础(五):用通配符进行过滤

用通配符进行过滤


使用通配符以及怎样使用LIKE操作符进行通配搜索,以便对数据进行复杂过滤。

百分号(%)通配符


最常使用的通配符是百分号(%)。在搜索串中,%表示任何字符出现任意次数。例如,为了找出所有以词jet起头的产品,可使用以下SELECT语句:

输入

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

输出

分析

此例子使用了搜索模式'jet%'。在执行这条子句时,将检索任意以jet起头的词。%告诉MySQL接受jet之后的任意字符,不管它有多少字符。

下划线(_)通配符


另一个有用的通配符是下划线(_)。下划线的用途与%一样,但下划线只匹配单个字符而不是多个字符。

输入

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

输出

分析

此WHERE子句中的搜索模式给出了后面跟有文本的两个通配64符。结果只显示匹配搜索模式的行:第一行中下划线匹配1,第二行中匹配2。

使用通配符的技巧


正如所见,MySQL的通配符很有用。但这种功能是有代价的:通配 符搜索的处理一般要比前面讨论的其他搜索所花时间更长。这里给出一些使用通配符要记住的技巧。

  • 不要过度使用通配符。如果其他操作符能达到相同的目的,应该使用其他操作符。
  • 在确实需要使用通配符时,除非绝对有必要,否则不要把它们用 在搜索模式的开始处。把通配符置于搜索模式的开始处,搜索起来是最慢的。
  • 仔细注意通配符的位置。如果放错地方,可能不会返回想要的数据。

总之,通配符是一种极重要和有用的搜索工具,以后我们经常会用到它。

原文地址:https://www.cnblogs.com/mxsf/p/12688516.html