返回顶部
首页 > 资讯 > 数据库 >MySQL5.7中的函数索引怎么用
  • 356
分享到

MySQL5.7中的函数索引怎么用

2024-04-02 19:04:59 356人浏览 独家记忆
摘要

本篇文章给大家分享的是有关Mysql5.7中的函数索引怎么用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。 &nb

本篇文章给大家分享的是有关Mysql5.7中的函数索引怎么用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

 在mysql5.7之前的版本中,函数索引是无法用到索引的,也不支持虚拟列,下边的sql执行时候回进行全表扫描:
 select * from t1 where mod(mode_id,8)=1
 MySQL5.7支持虚拟列,并且可以使用函数索引。
 确定数据库版本:

  1. mysql> select version();

  2. +------------+

  3. | version() |

  4. +------------+

  5. | 5.7.18-log |

  6. +------------+

  查看表结构:

  1. mysql> show create table t_func_mod \G

  2. *************************** 1. row ***************************

  3.        Table: t_func_mod

  4. Create Table: CREATE TABLE `t_func_mod` (

  5.   `id` int(11) NOT NULL,

  6.   `mod_id` int(11) GENERATED ALWAYS AS ((`id` % 8)) VIRTUAL,

  7.   PRIMARY KEY (`id`),

  8.   KEY `idx_mod_id` (`mod_id`)

  9. ) ENGINE=InnoDB DEFAULT CHARSET=utf8

  插入测试数据:

  1. mysql> insert into t_func_mod values(1,default);

  2. Query OK, 1 row affected (0.08 sec)


  3. mysql> insert into t_func_mod values(2,default);

  4. Query OK, 1 row affected (0.06 sec)


  5. mysql> insert into t_func_mod values(3,default);

  6. Query OK, 1 row affected (0.01 sec)


  7. mysql> insert into t_func_mod values(4,default);

  8. Query OK, 1 row affected (0.01 sec)


  9. mysql> insert into t_func_mod values(5,default);

  10. Query OK, 1 row affected (0.04 sec)


  11. mysql> insert into t_func_mod values(6,default);

  12. Query OK, 1 row affected (0.00 sec)


  13. mysql> insert into t_func_mod values(7,default);

  14. Query OK, 1 row affected (0.00 sec)


  15. mysql> insert into t_func_mod values(8,default);

  16. Query OK, 1 row affected (0.00 sec)

  注意:插入数据时候,虚拟列要使用default,否则会报错。
 查看测试表数据:

  1. mysql> select * from t_func_mod;

    +----+--------+

  2. | id | mod_id |

    +----+--------+

  3. | 8 | 0 |

  4. | 1 | 1 |

  5. | 2 | 2 |

  6. | 3 | 3 |

  7. | 4 | 4 |

  8. | 5 | 5 |

  9. | 6 | 6 |

  10. | 7 | 7 |

    +----+--------+

通过explain查看执行计划,已经使用到了索引:

  1. mysql> explain select * from t_func_mod where mod_id=5;

    ----+-------------+------------+------------+------+---------------+------------+---------+-------+------+----------+-------------+

  2. | id | select_type | table | partitions | type | possible_keys | key | key_len | ref | rows | filtered | Extra |

    +----+-------------+------------+------------+------+---------------+------------+---------+-------+------+----------+-------------+

  3. | 1 | SIMPLE | t_func_mod | NULL | ref | idx_mod_id | idx_mod_id | 5 | const | 1 | 100.00 | Using index |


以上就是MySQL5.7中的函数索引怎么用,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网数据库频道。

您可能感兴趣的文档:

--结束END--

本文标题: MySQL5.7中的函数索引怎么用

本文链接: https://lsjlt.com/news/66111.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • MySQL5.7中的函数索引怎么用
    本篇文章给大家分享的是有关MySQL5.7中的函数索引怎么用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。 &nb...
    99+
    2024-04-02
  • 索引函数在 Java 中的作用是什么?
    在 Java 中,索引函数的作用是帮助程序员快速查找和获取数据。通常情况下,我们使用索引函数来优化程序的性能,特别是在大型数据集合中搜索数据时。 Java 中有很多索引函数可以使用,包括数组索引、哈希表索引、树索引等。在本文中,我们将着重...
    99+
    2023-09-02
    索引 函数 api
  • oracle函数索引怎么创建和使用
    创建一个Oracle函数索引的语法如下: CREATE INDEX index_name ON table_name (functi...
    99+
    2024-03-13
    oracle
  • MySQL中怎么使用Generated Columns + index代替函数索引
    这篇文章主要讲解了“MySQL中怎么使用Generated Columns + index代替函数索引”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MySQ...
    99+
    2024-04-02
  • 基于函数的索引
    以下内容摘自《Oracle SQL 高级编程》 第12.4.2章节-基于函数的索引[其中代码部分被修改,原始请参考书籍]如果一个谓语在索引列上应用了函数,则优化器不会选用该列上的索引。例如,对于谓...
    99+
    2024-04-02
  • oracle中的索引怎么用
    oracle 中索引用于快速查找数据并优化查询性能,可用来创建索引、维护索引和在查询中使用索引。索引的优点包括提高查询速度、减少 i/o 操作、优化联接和促进数据完整性。oracle 支...
    99+
    2024-05-09
    oracle
  • 如何优化 Java 中的索引函数使用?
    Java中的索引函数是一种非常有用的工具,可以帮助开发人员更快速地访问和操作数据。但是,如果不正确使用索引函数,它可能会导致性能问题。在本文中,我们将探讨如何优化Java中的索引函数使用。 索引函数是什么? 在Java中,索引函数是一种...
    99+
    2023-09-02
    索引 函数 api
  • Spring 中的函数索引需要 Go 吗?
    Spring 是一个非常流行的 Java 应用程序框架,它在处理大规模应用程序的同时提供了高效的开发方式。Spring 4.1 版本开始引入了函数索引(Function Indexing)功能,用于简化开发人员在应用程序中使用函数和方法的方...
    99+
    2023-10-11
    索引 spring 函数
  • 为什么要在 Spring 中使用 Go 索引函数?
    Spring 是一个流行的 Java 开发框架,它提供了丰富的功能和组件,可以帮助开发人员快速开发高质量的应用程序。在 Spring 中,有一个非常实用的功能是 Go 索引函数,本文将深入探讨为什么要在 Spring 中使用 Go 索引函数...
    99+
    2023-10-11
    索引 spring 函数
  • mysql中聚集索引、辅助索引、覆盖索引、联合索引怎么用
    这篇文章主要介绍了mysql中聚集索引、辅助索引、覆盖索引、联合索引怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。聚集索引(Clustered Index)聚集索引就是...
    99+
    2023-06-29
  • MongoDB中索引怎么用
    小编给大家分享一下MongoDB中索引怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! 在任何数...
    99+
    2024-04-02
  • SQL中索引怎么用
    小编给大家分享一下SQL中索引怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! 1、概念&nb...
    99+
    2024-04-02
  • Oracle中复合索引与空值的索引怎么用
    这篇文章给大家分享的是有关Oracle中复合索引与空值的索引怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。在QQ群里讨论一个SQL优化的问题,语句大致如下:selec...
    99+
    2024-04-02
  • 如何在 Java 中使用索引函数 API?
    索引函数 API 是 Java 编程语言中的一个重要组成部分,它提供了一些非常有用的方法和函数,帮助我们在 Java 应用程序中有效地处理索引和数据。在本文中,我们将介绍如何在 Java 中使用索引函数 API,以及如何使用它来处理索引和...
    99+
    2023-09-02
    索引 函数 api
  • python中的索引怎么使用
    在Python中,可以使用索引来访问和操作列表、字符串和元组等序列类型的对象。索引是一个非负整数,表示序列中的位置。索引从0开始,表...
    99+
    2023-08-18
    python
  • Java 中最常用的索引函数 API 有哪些?
    Java 是一个广泛应用于各种领域的编程语言,它拥有丰富的 API 库,其中索引函数 API 是开发者经常使用的 API 之一。在本文中,我们将介绍 Java 中最常用的索引函数 API,以及它们的使用方法和示例代码。 indexOf()...
    99+
    2023-09-02
    索引 函数 api
  • 数据仓库中怎么使用索引
    今天就跟大家聊聊有关数据仓库中怎么使用索引,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。 数据仓库中如何使用索引数据仓库的索引是个棘手的问...
    99+
    2024-04-02
  • mongodb数据库中怎么使用索引
    这篇文章将为大家详细讲解有关mongodb数据库中怎么使用索引,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。      &nb...
    99+
    2024-04-02
  • Oracle函数使索引列失效怎么办
    小编给大家分享一下Oracle函数使索引列失效怎么办,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、数据版本与原始语句及相关信息版本信息SQL> select * from&...
    99+
    2023-06-22
  • Java API 中的索引函数都有哪些?
    在 Java 开发中,经常需要对集合、数组等数据结构进行查找操作。而 Java API 中提供了丰富的索引函数,方便我们快速地查找数据。本文将介绍常用的 Java API 中的索引函数。 indexOf(Object o) 和 last...
    99+
    2023-09-02
    索引 函数 api
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作