+ -

MySQL通配符有哪些以及使用方法

时间:2025-08-07

来源:互联网

在手机上看
手机扫描阅读

在数据库查询中,模糊匹配是一种常见需求。例如,我们需要查找包含某个关键词的记录、匹配特定格式的字符串,或进行部分匹配。MySQL 提供了强大的字符串匹配功能,其中 通配符 是实现模糊查询的重要工具。通过 LIKE 运算符与通配符的结合使用,可以实现灵活的模式匹配。本文将详细介绍 MySQL 中的通配符种类及其使用方法,帮助开发者掌握如何高效地进行模糊查询。

一、MySQL 中的通配符种类

MySQL 支持两种主要的通配符:

百分号 %:匹配任意数量的字符(包括零个字符),常用于模糊匹配字符串的任意部分。

下划线 _:匹配单个字符,适用于格式固定、长度一致的模糊匹配。

这两个通配符通常与 LIKE 运算符结合使用,用于 SELECT、UPDATE、DELETE 等语句中,实现对数据库中字符串的模糊匹配。

二、使用 % 通配符进行模糊匹配

% 通配符可以匹配任意长度的字符,是 MySQL 中最常用的通配符之一。

  • 基本用法:

  • SELECT*FROMusersWHEREnameLIKE'J%';

    该语句将匹配所有以字母 J 开头的姓名,如 John、Jack、Jennifer 等。

  • 进阶用法:

  • 匹配包含某个关键词的记录:

    SELECT*FROMproductsWHEREdescriptionLIKE'%手机%';

    该语句将返回所有描述中包含“手机”一词的产品记录。

    匹配以特定字符串结尾的记录:

    SELECT*FROMemailsWHEREaddressLIKE'%@example.com';

    该语句将查找所有邮箱地址以 @example.com 结尾的记录。

  • 注意事项:

  • % 可以出现在模式的任意位置;

    通配符区分大小写取决于数据库的排序规则(默认不区分大小写);

    在 NOT LIKE 中使用 % 可实现反向筛选。

    三、使用 _ 通配符进行固定长度匹配

    _ 通配符用于匹配一个固定位置的字符,适用于已知字符串长度和格式的场景。

  • 基本用法:

  • SELECT*FROMcodesWHEREcodeLIKE'A_C';

    该语句将匹配所有以 A 开头、C 结尾,中间为任意一个字符的字符串,如 A1C、ABC、A@C 等。

  • 典型应用场景:

  • 查询固定格式的编码:

    SELECT*FROMordersWHEREorder_idLIKE'2023_001';

    该语句将匹配如 2023A001、2023B001 等订单编号。

    匹配特定长度的用户名:

    SELECT*FROMusersWHEREusernameLIKE'user_';

    该语句将匹配如 user1、userA 等长度为5的用户名。

  • 注意事项:

  • _ 只能匹配一个字符;

    适用于数据格式较为固定、长度一致的字段;

    通常与 LIKE 一起使用,不适用于正则表达式。

    四、通配符与 LIKE 运算符的结合使用

    MySQL 中的通配符必须与 LIKE 或 NOT LIKE 搭配使用,才能发挥模糊匹配的作用。

  • 在 SELECT 查询中使用

  • SELECT*FROMcustomersWHEREcompanyLIKE'科技%';

    该语句将查找所有公司名以“科技”开头的客户。

  • 在 UPDATE 语句中使用

  • UPDATEusersSETstatus='active'WHEREemailLIKE'%@gmail.com';

    该语句将更新所有使用 Gmail 邮箱的用户状态为“active”。

  • 在 DELETE 语句中使用

  • DELETEFROMlogsWHEREmessageLIKE'%error%';

    该语句将删除所有日志信息中包含 “error” 的记录。

  • 在 WHERE 条件中组合使用

  • SELECT*FROMemployeesWHEREnameLIKE'A__01';

    该语句将匹配如 A1201、Aab01 等长度为5、格式为 A 开头、结尾为 01 的姓名。

    MySQL通配符有哪些以及使用方法

    MySQL 中的通配符是实现模糊匹配的强大工具,主要包含 % 和 _ 两个通配符,分别用于匹配任意数量字符和单个字符。通过与 LIKE 运算符结合,可以实现灵活的字符串匹配,适用于数据筛选、更新、删除等操作。

    以上就是php小编整理的全部内容,希望对您有所帮助,更多相关资料请查看php教程栏目。

    热门下载

    更多