首页 >数据库 >mysql教程 >如何在 MySQL 查询中执行区分大小写的字符串比较?

如何在 MySQL 查询中执行区分大小写的字符串比较?

Patricia Arquette
Patricia Arquette原创
2025-01-21 07:13:12310浏览

How Can I Perform Case-Sensitive String Comparisons in MySQL Queries?

在 MySQL 中实现区分大小写的字符串比较

标准 MySQL 字符串比较通常不区分大小写。 当需要精确匹配时,这可能会出现问题。幸运的是,MySQL 提供了一种简单的方法来强制查询中区分大小写。

在 MySQL 中实现区分大小写的查询

BINARY 关键字是执行区分大小写的字符串比较的关键。 语法如下:

<code class="language-sql">SELECT * FROM `table` WHERE BINARY `column` = 'value';</code>

我们举个例子来说明一下:

想象一个这样结构的表格:

<code class="language-sql">CREATE TABLE `test` (
  `id` INT NOT NULL AUTO_INCREMENT,
  `name` VARCHAR(255) NOT NULL,
  PRIMARY KEY (`id`)
);

INSERT INTO `test` (`name`) VALUES ('John'), ('JOHN'), ('JoHn');</code>

没有 BINARY 的查询将匹配所有三个条目:

<code class="language-sql">SELECT * FROM `test` WHERE `name` = 'john';</code>

但是,通过添加 BINARY,查询将区分大小写,仅返回完全匹配的内容:

<code class="language-sql">SELECT * FROM `test` WHERE BINARY `name` = 'john';</code>

该技术可确保准确的区分大小写的比较,消除因不区分大小写的匹配而导致的潜在错误。

以上是如何在 MySQL 查询中执行区分大小写的字符串比较?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn