ASP源码.NET源码PHP源码JSP源码JAVA源码DELPHI源码PB源码VC源码VB源码Android源码
当前位置:首页 >> 数据库 >> MySql >> MySQL高效模糊搜索之内置函数locate instr position find_in_set使用详解

MySQL高效模糊搜索之内置函数locate instr position find_in_set使用详解(4/4)

来源:网络整理     时间:2018-10-04     关键词:

本篇文章主要介绍了" MySQL高效模糊搜索之内置函数locate instr position find_in_set使用详解",主要涉及到方面的内容,对于MySql感兴趣的同学可以参考一下: 常用的一共有4个方法,如下:1.使用locate()方法普通用法:SELECT`column`from`table`wherelocate('keyword',...

mysql> SELECT * FROM pet WHERE name REGEXP "[wW]";
+----------+-------+---------+------+------------+------------+
| name | owner | species | sex | birth | death |
+----------+-------+---------+------+------------+------------+
| Claws | Gwen | cat | m | 1994-03-17 | NULL |
| Bowser | Diane | dog | m | 1989-08-31 | 1995-07-29 |
| Whistler | Gwen | bird | NULL | 1997-12-09 | NULL |
+----------+-------+---------+------+------------+------------+

既然如果一个正规表达式出现在值的任何地方,其模式匹配了,就不必再先前的查询中在模式的两方面放置一个通配符以使得它匹配整个值,就像如果你使用了一个SQL模式那样。

 为了找出包含正好5个字符的名字,使用“^”和“$”匹配名字的开始和结尾,和5个“.”实例在两者之间:

mysql> SELECT * FROM pet WHERE name REGEXP "^.....$";
+-------+--------+---------+------+------------+-------+
| name | owner | species | sex | birth | death |
+-------+--------+---------+------+------------+-------+
| Claws | Gwen | cat | m | 1994-03-17 | NULL |
| Buffy | Harold | dog | f | 1989-05-13 | NULL |
+-------+--------+---------+------+------------+-------+

你也可以使用“{n}”“重复n次”操作符重写先前的查询:

mysql> SELECT * FROM pet WHERE name REGEXP "^.{5}$";
+-------+--------+---------+------+------------+-------+
| name | owner | species | sex | birth | death |
+-------+--------+---------+------+------------+-------+
| Claws | Gwen | cat | m | 1994-03-17 | NULL |
| Buffy | Harold | dog | f | 1989-05-13 | NULL |
+-------+--------+---------+------+------------+-------+

以上是Mysql模糊搜索方法Like的使用方法,与前locate instr position这三个内置函数相比性能上要慢些,无论哪种模糊搜索在查询时都会消耗大量服务器资源所以在实际工作中我们应尽量少用模糊搜索

您可能感兴趣的文章:

  • Mysql全文搜索match against的用法
  • mysql 模糊搜索的方法介绍
  • Mysql Binlog快速遍历搜索记录及binlog数据查看的方法
  • mysql全文搜索 sql命令的写法
  • mysql 搜索之简单应用
  • php利用scws实现mysql全文搜索功能的方法
  • php mysql like 实现多关键词搜索的方法
  • 详细介绍基于MySQL的搜索引擎MySQL-Fullltext
  • mysql 全文搜索 技巧
  • MySQL多层级结构-树搜索介绍
  • 在MySQL中使用Sphinx实现多线程搜索的方法
  • mysql中使用sphinx搜索子域名需注意的问题

以上就介绍了 MySQL高效模糊搜索之内置函数locate instr position find_in_set使用详解,包括了方面的内容,希望对MySql有兴趣的朋友有所帮助。

本文网址链接:http://www.codes51.com/article/detail_4591578_4.html

相关图片

相关文章