MySQL 模糊搜索如何忽略大小写?

4 min read
  1. 使用 COLLATE
    可以在查询语句中使用 COLLATE 关键字参数来指定排序和比较规则,进而实现大小写不敏感的模糊搜索。

例如,可以使用以下语句:

SELECT * FROM mytable WHERE name COLLATE utf8_general_ci LIKE '%john%';

其中 utf8_general_ci 是一种不区分大小写的排序和比较规则,它会忽略大小写差异,从而实现大小写不敏感的模糊搜索。

  1. 转换大小写
    可以使用 LOWER 或 UPPER 函数将查询条件中的字符串转换为统一的大小写形式,从而与数据库中的数据进行比较。例如:

SELECT * FROM mytable WHERE LOWER(name) LIKE '%john%';

这个查询语句会将 name 字段中的数据转换为小写形式,然后与查询条件中的字符串 'john' 进行比较,从而实现大小写不敏感的模糊搜索。当然,也可以使用 UPPER 函数将查询条件中的字符串转换为大写形式。

总之,以上两种方法都可以实现 MySQL 模糊搜索的大小写不敏感。选择哪种方法,可以根据具体情况和个人习惯进行选择。