首页 > 其他分享 >大二快乐日记11.8

大二快乐日记11.8

时间:2023-12-19 19:56:48浏览次数:45  
标签:顺序 11.8 索引 表中 访问 MySQL 大二 数据 日记

索引就是根据表中的一列或若干列按照一定顺序建立的列值与记录行之间的对应关系表,实质上是一张描述索引列的列值与原表中记录行之间一 一对应关系的有序表。

索引是 MySQL 中十分重要的数据库对象,是数据库性能调优技术的基础,常用于实现数据的快速检索。

在 MySQL 中,通常有以下两种方式访问数据库表的行数据:
1) 顺序访问
顺序访问是在表中实行全表扫描,从头到尾逐行遍历,直到在无序的行数据中找到符合条件的目标数据。

顺序访问实现比较简单,但是当表中有大量数据的时候,效率非常低下。例如,在几千万条数据中查找少量的数据时,使用顺序访问方式将会遍历所有的数据,花费大量的时间,显然会影响数据库的处理性能。
2) 索引访问
索引访问是通过遍历索引来直接访问表中记录行的方式。

使用这种方式的前提是对表建立一个索引,在列上创建了索引之后,查找数据时可以直接根据该列上的索引找到对应记录行的位置,从而快捷地查找到数据。索引存储了指定列数据值的指针,根据指定的排序顺序对这些指针排序。

例如,在学生基本信息表 tb_students 中,如果基于 student_id 建立了索引,系统就建立了一张索引列到实际记录的映射表。当用户需要查找 student_id 为 12022 的数据的时候,系统先在 student_id 索引上找到该记录,然后通过映射表直接找到数据行,并且返回该行数据。因为扫描索引的速度一般远远大于扫描实际数据行的速度,所以采用索引的方式可以大大提高数据库的工作效率。

简而言之,不使用索引,MySQL 就必须从第一条记录开始读完整个表,直到找出相关的行。表越大,查询数据所花费的时间就越多。如果表中查询的列有一个索引,MySQL 就能快速到达一个位置去搜索数据文件,而不必查看所有数据,这样将会节省很大一部分时间。

标签:顺序,11.8,索引,表中,访问,MySQL,大二,数据,日记
From: https://www.cnblogs.com/galileo9527/p/17914556.html

相关文章

  • 大二快乐日记11.14
    基本语法当不再需要索引时,可以使用DROPINDEX语句或ALTERTABLE语句来对索引进行删除。1)使用DROPINDEX语句语法格式:DROPINDEX<索引名>ON<表名>语法说明如下:<索引名>:要删除的索引名。<表名>:指定该索引所在的表名。2)使用ALTERTABLE语句根据ALTERTABLE语句的语......
  • 11.8
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>学生注册</title><style>button{display:block;margin-top:10px;pad......
  • 【工作日记(实习)02】实习第46天
      其实第46天是上周五。  将要下雪,还未下雪。  头天通知10:30到酒店给大领导的报告捧场。  我八点醒(平时上班的话7:00就得醒了),然后计算了一下时间,赶去酒店。  没有直达的地铁,决定坐公交。  不先去单位了,决定直接从学校去酒店。  大约到了快9:40,我都快到了,发消......
  • 11.8
    今日学习内容<%--CreatedbyIntelliJIDEA.TochangethistemplateuseFile|Settings|FileTemplates.--%><%@pagecontentType="text/html;charset=UTF-8"language="java"%><html><head><title>Title</ti......
  • 2023年12月日记
    12.15今天还是下雪,好看捏,早上不用跑操,多睡了十分钟,万豪附中薄纱本部。第一节就是oi,上完李帅早读过来了。huge终于把luogu给我们几个开开了。不知道干啥,决定学DP优化,看了几篇博客就写了。写了个CF327C,很典的一道单调队列优化,写完调的时候jd一直在打扰我要口香糖。jd:我都一年......
  • 12.15日记
    log4j.rootLogger=info,consolePrint,errorFile,logFile log4j.appender.consolePrint.Encoding=UTF-8log4j.appender.consolePrint=org.apache.log4j.ConsoleAppenderlog4j.appender.consolePrint.Target=System.outlog4j.appender.consolePrint.layout=org.apache.l......
  • 12月12日记录mybatis plus的初始学习
    今天开始mybatisplus的初始学习,首先是学习mybatisplus的引入方式需要引入下面三段代码<dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.5.3.1</version></dependency>......
  • 12.14日记
    FlinkJobManager架构原理的核心是JobMaster和ResourceManager,其中JobMaster负责任务的调度和监控,ResourceManager负责集群资源的管理。JobMaster和ResourceManager之间通过RPC通信进行交互。JobMaster主要负责以下几个方面:   任务管理JobMaster负责接收用户提交的任务,并将任......
  • 服务器日记
    查看玩法:自己拥有一台服务器可以做哪些很酷的事情?-知乎(zhihu.com)  自己拥有一台服务器可以做哪些很酷的事情?-知乎(zhihu.com)搜索监控服务器:netdata监控服务器_百度搜索(baidu.com)查看教程:65.7kStar!强大又全面的性能监控工具——Netdata-知乎(zhihu.com)查看......
  • NetSuite 开发日记:如何管理多环境自定义列表值
    在NetSuite中可以创建自定义列表,列表可用于为其他(自定义)记录上的下拉选项列表值。varrec=record.create({type:'customrecord_xx'});rec.setValue({fieldId:'custrecord_xx_fld',value:'1'});rec.save();我们设置自定义列表值,需要使用该值的内......