MySQL一些特殊功能的索引(6/16)

特殊功能性索引

  1. B-Tree索引

    • InnoDB的默认索引类型,适用于多种查询操作。
  • 可以用于等值查询、范围查询和索引列的组合查询。

    创建B-Tree索引的示例:

    sql 复制代码
    CREATE INDEX index_name ON table_name (column1, column2);
  1. 全文索引(FULLTEXT Index)

    • FULLTEXT索引用于文本内容的全文搜索。
    • 适用于大量文本数据的搜索。

    创建全文索引的示例:
    CREATE FULLTEXT INDEX fulltext_index_name ON table_name (column1, column2);

  2. 空间索引(SPATIAL Index)

    • 空间索引用于地理空间数据的查询。
    • 适用于存储地理空间信息的数据类型,如点、线和多边形。

    创建空间索引的示例:

    sql 复制代码
    CREATE SPATIAL INDEX spatial_index_name ON table_name (geospatial_column);
  3. 哈希索引(Hash Index)

    • 哈希索引使用哈希表实现,适用于Memory引擎的表和临时表中的等值查询。
    • 哈希索引在InnoDB引擎中不直接使用,但在Memory引擎中是默认的索引类型。

    创建哈希索引的示例(Memory引擎):

    sql 复制代码
    CREATE TABLE table_name (
        id INT NOT NULL,
        column1 VARCHAR(255),
        HASH INDEX(hash_index_name) FOR column1
    ) ENGINE=MEMORY;
  4. 隐藏索引(Invisible Index)

    • 隐藏索引不会在SHOW INDEXINFORMATION_SCHEMA中显示,但优化器可以选择使用它。
    • 可以通过ALTER TABLE语句将普通索引转换为隐藏索引。

    将普通索引转换为隐藏索引的示例:

    sql 复制代码
    ALTER TABLE table_name ALTER INDEX index_name INVISIBLE;

作者与版本更新计划

感谢您的阅读与支持!本文是《MySQL实战与优化》专栏中的一篇精选文章,该专栏共包含16篇文章,旨在为您提供实战中可直接应用的宝贵知识。

关注公众号【数舟】,获取作者最新动态,公众号后台回复【mysql2024】,即可免费领取这份包含16篇文章的完整的PDF专栏!

目前版本为v1.0,更新时间2024年4月10日。后续此文档更新与版本发布会同步到知识星球【数舟】中。

知识整理与创作不易,感谢大家理解与支持!

加入知识星球,您将获得更多独家内容、专栏更新以及与行业内专家和同行的互动交流机会。我们在知识星球等您,一起探索MySQL的深层次世界!

星球内目前包含300+精品文章,内容涵盖大数据、MySQL、运维、Python、调优、经验分享、数据分析等方向内容,会根据大家的学习需求更新更多方向的内容。

🔗 立即扫描下方二维码,加入知识星球,与行业精英共同成长,开启您的专属学习之旅!

相关推荐
纯纯沙口3 分钟前
Qt—用SQLite实现简单的注册登录界面
数据库·sqlite
初次见面我叫泰隆16 分钟前
MySQL——3、数据类型
数据库·mysql
一叶屋檐38 分钟前
Neo4j 图书馆借阅系统知识图谱设计
服务器·数据库·cypher
好吃的肘子2 小时前
MongoDB 应用实战
大数据·开发语言·数据库·算法·mongodb·全文检索
weixin_472339462 小时前
MySQL MCP 使用案例
数据库·mysql
lqlj22333 小时前
Spark SQL 读取 CSV 文件,并将数据写入 MySQL 数据库
数据库·sql·spark
joker D8883 小时前
【C++】深入理解 unordered 容器、布隆过滤器与分布式一致性哈希
c++·分布式·哈希算法
遗憾皆是温柔3 小时前
MyBatis—动态 SQL
java·数据库·ide·sql·mybatis
未来之窗软件服务4 小时前
Cacti 未经身份验证SQL注入漏洞
android·数据库·sql·服务器安全
fengye2071614 小时前
在MYSQL中导入cookbook.sql文件
数据库·mysql·adb