浅谈mysql通配符进行模糊查询的实现方法

作者:第一夫人 时间:2024-01-13 02:56:33 

在mysql数据库中,当我们需要模糊查询的时候 ,我们会使用到通配符。

首先我们来了解一下2个概念,一个是操作符,一个是通配符。

操作符

like就是SQL语句中的操作符,它的作用是指示在SQL语句后面的搜索模式是利用通配符而不是直接相等匹配进行比较。

注意:如果使用like操作符时没有使用通配符,那么效果是和等号是一致的。


SELECT id,title FROM table WHERE title like '张三';

这种写法就只能匹配张三的记录,而不能匹配像张三是个好人这样的记录。

通配符

%(百分号),_(下划线)就是通配符,%表示任何字符出现任意次数(可以是0次),_表示单个字符,用户如下:


1 SELECT id,title FROM table WHERE title like '张三%';
2 SELECT id,title FROM table WHERE title like '%张三';
3 SELECT id,title FROM table WHERE title like '%张三%';

1表示匹配以张三开始的记录,2表示匹配以张三结束的记录,3表示匹配含有张三的记录。


1 SELECT id,title FROM table WHERE title like '张三_';
2 SELECT id,title FROM table WHERE title like '__张三';

1表示匹配像张三好这样的记录,2表示匹配像你好张三这样的记录。

使用注意

注意大小写,在使用模糊匹配时,也就是匹配文本时,mysql是可能区分大小的,也可能是不区分大小写的,这个结果是取决于用户对MySQL的配置方式。

注意尾部空格。

注意NULL,%可以匹配任意字符,但是不能匹配NULL。

合理使用

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

不要过度使用通配符,如果其他操作符能达到相同的目的,应该 使用其他操作符。

在确实需要使用通配符时,除非绝对有必要,否则不要把它们用 在搜索模式的开始处,把通配符置于搜索模式的开始处,搜索起 来是最慢的。

仔细注意通配符的位置,如果放错地方,可能不会返回想要的数。

来源:https://www.cnblogs.com/firstlady/p/10160023.html

标签:mysql,通配符,模糊查询
0
投稿

猜你喜欢

  • Python 切片索引越界的问题(数组下标越界)

    2023-09-11 23:00:30
  • uniapp项目打包为桌面应用的方法步骤

    2024-04-29 13:16:04
  • 关于数据库的alter table操作和索引概念

    2009-12-15 21:57:00
  • Mysql使用索引实现查询优化

    2024-01-16 03:59:35
  • golang中的时间格式化

    2024-04-25 15:29:58
  • Python列表删除的三种方法代码分享

    2022-10-26 19:13:35
  • Python3中条件控制、循环与函数的简易教程

    2021-06-09 18:22:54
  • pytorch 模型可视化的例子

    2023-06-13 08:24:34
  • DIV+CSS常见错误及解决方法

    2008-04-25 22:46:00
  • javascript 设置文本框中焦点的位置

    2024-05-02 17:29:41
  • Python 3.x基于Xml数据的Http请求方法

    2021-05-17 23:45:18
  • SqlServer数据库远程连接案例教程

    2024-01-21 10:16:08
  • 详解利用python+opencv识别图片中的圆形(霍夫变换)

    2023-12-07 18:17:50
  • MySQL在Linux系统中隐藏命令行中的密码的方法

    2024-01-20 03:38:34
  • MySQL重定位数据库目录的内容

    2009-02-26 16:03:00
  • Python调用REST API接口的几种方式汇总

    2023-01-06 16:42:17
  • 浅谈Pandas dataframe数据处理方法的速度比较

    2023-04-17 06:38:39
  • django序列化serializers过程解析

    2022-09-26 22:22:36
  • ZeroClipboard.js使用一个flash复制多个文本框

    2024-04-27 15:19:14
  • php封装的单文件(图片)上传类完整实例

    2024-05-03 15:50:18
  • asp之家 网络编程 m.aspxhome.com