💡
原文英文,约2700词,阅读约需10分钟。
📝
内容提要
介绍MySQL中生成哈希列的使用方法,可用于快速查找和强制多列的唯一性,不适用于安全存储密码等敏感信息,可解决BLOB或TEXT列无法添加B树索引的问题,可将多个列合并为一个紧凑的哈希值,可存储为二进制数据,可使用生成列或函数索引实现。
🎯
关键要点
- MySQL中可以使用生成哈希列来快速查找和强制多列的唯一性。
- 生成列是基于表达式计算得出的列,值始终是最新的。
- 生成哈希列是生成列的一种,其值是其他列的哈希值,通常使用MD5哈希。
- 生成哈希列不适用于安全存储密码等敏感信息。
- 可以通过生成哈希列解决BLOB或TEXT列无法添加B树索引的问题。
- 使用UNHEX函数将哈希值存储为二进制数据更高效。
- 可以将多个列的值合并为一个紧凑的哈希值,以提高查询性能。
- 使用CONCAT_WS函数可以避免在连接多个列时出现歧义。
- 可以为生成的哈希列添加唯一索引,以防止重复数据的插入。
- MySQL 8.0.13及以后版本支持功能索引,可以直接在函数结果上创建索引。
➡️