MySQL LIKE 子句的具体使用

 更新时间:2026年01月28日 10:04:50   作者:wangjinjin180  
LIKE子句用于在SQL查询中进行模式匹配,支持%和_通配符,它可以用于查找包含特定子字符串或匹配特定格式的字符串,下面就来详细的介绍一下MySQL LIKE 子句的实现

LIKE子句的基本语法

LIKE 子句用于在 SELECTUPDATE 或 DELETE 查询中进行模式匹配,以查找符合特定模式的记录。它通常与 WHERE 子句一起使用来执行模糊查询。

基本语法:

SELECT column1, column2, ...
FROM table_name
WHERE column_name LIKE pattern;
  • column_name: 要查询的列。
  • pattern: 用于匹配数据的模式,可以使用通配符进行模糊匹配。

LIKE子句中的通配符

LIKE 子句支持以下通配符,用于表示模糊匹配模式:

  • %:表示零个或多个字符。例如,'a%' 可以匹配任何以字母 a 开头的字符串。
  • _:表示单个字符。例如,'a_' 可以匹配任何以字母 a 开头并紧跟一个字符的字符串。

示例:LIKE的通配符

SELECT * FROM users 
WHERE username LIKE 'a%';

此查询返回所有以 a 开头的用户名。

SELECT * FROM users
WHERE username LIKE 'a_';

此查询返回所有以 a 开头并且后面只有一个字符的用户名。

使用LIKE进行模糊查询

LIKE 子句可以用于在文本列中查找符合某种模式的数据。常见的用途包括查找包含特定子字符串的记录,或者匹配特定格式的字符串。

示例:查找包含 ‘example’ 的电子邮件地址

SELECT * FROM users
WHERE email LIKE '%example%';

此查询返回所有 email 字段中包含 example 的记录。

示例:查找以 ‘john’ 开头的名字

SELECT * FROM users
WHERE first_name LIKE 'john%';

此查询返回所有 first_name 以 ‘john’ 开头的记录。

LIKE的大小写敏感性

在 MySQL 中,LIKE 子句的大小写敏感性取决于所使用的字符集和排序规则。默认情况下,MySQL 使用不区分大小写的排序规则(如 utf8_general_ci),但你可以使用区分大小写的排序规则(如 utf8_bin)来进行区分大小写的匹配。

示例:使用大小写敏感排序规则查询

SELECT * FROM users
WHERE username LIKE BINARY 'Alice';

此查询会查找准确匹配 'Alice' 的用户名,而不会匹配 'alice' 或 'ALICE'

LIKE子句与NOT LIKE

NOT LIKE 用于排除与某模式匹配的记录,它的功能与 LIKE 相反。

示例:查询所有不包含 ‘example’ 的电子邮件地址

SELECT * FROM users
WHERE email NOT LIKE '%example%';

此查询返回所有 email 字段中不包含 example 的记录。

结合WHERE和LIKE的查询示例

示例:查找姓氏包含 ‘son’ 的用户

SELECT * FROM users
WHERE last_name LIKE '%son%';

示例:查找以 ‘J’ 开头并且长度为 4 个字符的用户名

SELECT * FROM users
WHERE username LIKE 'J___';

示例:查找包含 ‘2022’ 的订单号

SELECT * FROM orders
WHERE order_number LIKE '%2022%';

性能考虑

尽管 LIKE 是进行模式匹配的强大工具,但在大数据集上使用 LIKE 查询时,性能可能会受到影响。特别是当使用 LIKE 子句以 % 开头时,数据库可能无法使用索引,从而导致全表扫描。为了提高性能,建议尽量避免使用 % 开头的模式,或者在可能的情况下使用全文索引。

到此这篇关于MySQL LIKE 子句的具体使用的文章就介绍到这了,更多相关MySQL LIKE 子句内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Windows下MySQL下载与安装、配置与使用教程

    Windows下MySQL下载与安装、配置与使用教程

    这篇文章主要为大家详细介绍了Windows下MySQL下载与安装、配置与使用教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-01-01
  • mysql如何匹配数组字段中的某一个具体值

    mysql如何匹配数组字段中的某一个具体值

    在数据库操作中,有时需要查询数组字段中包含特定值的数据,传统like查询可能会带来错误结果,如查询包含数字1的数组可能错误返回包含数字10的结果,为此,可以使用MySQL的FIND_IN_SET函数或REGEXP正则表达式进行精确匹配,FIND_IN_SET适用于匹配单个固定值
    2024-11-11
  • MySQL中DATE_FORMAT时间函数的使用小结

    MySQL中DATE_FORMAT时间函数的使用小结

    本文主要介绍了MySQL中DATE_FORMAT时间函数的使用小结,用于格式化日期/时间字段,可提取年月、统计月份数据、精确到天,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-08-08
  • 优化MySQL数据库中的查询语句详解

    优化MySQL数据库中的查询语句详解

    这篇文章主要介绍了优化MySQL数据库中的查询语句,非常实用的经验总结,需要的朋友可以参考下
    2014-07-07
  • MySql常用操作SQL语句汇总

    MySql常用操作SQL语句汇总

    这篇文章主要介绍了MySql常用操作SQL语句汇总,本文讲解了增加、删除、查询、修改等常用SQL语句实例,需要的朋友可以参考下
    2015-03-03
  • mysql8.0使用PXC实现高可用的示例(Rocky8.0环境)

    mysql8.0使用PXC实现高可用的示例(Rocky8.0环境)

    本文主要介绍了在Rocky8.0环境下搭建MySQL8.0的Percona XtraDB Cluster(PXC)集群,,可以实现数据实时同步、读写分离和高可用性,具有一定的参考价值,感兴趣的可以了解一下
    2025-02-02
  • MySQL之join查询优化方式

    MySQL之join查询优化方式

    这篇文章主要介绍了MySQL之join查询优化方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • MySQL 8.0.29 安装配置方法图文教程

    MySQL 8.0.29 安装配置方法图文教程

    这篇文章主要为大家详细介绍了MySQL 8.0.29 安装配置方法图文教程,文中安装步骤介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-07-07
  • MySQL查询排序与查询聚合函数用法分析

    MySQL查询排序与查询聚合函数用法分析

    这篇文章主要介绍了MySQL查询排序与查询聚合函数用法,结合实例形式分析了MySQL查询结果排序以及查询聚合函数相关使用技巧,需要的朋友可以参考下
    2019-11-11
  • MySQL操作并使用Python进行连接

    MySQL操作并使用Python进行连接

    这篇文章主要介绍了MySQL操作并使用Python进行连接,文章通过设置外键进行表与表的相连,且外键必须是其他表的主键展开详细内容,需要的小伙伴可以参考一下
    2022-06-06

最新评论