回城传送–》《100天精通MYSQL从入门到就业》文章目录零、前言一、练习题目二、SQL思路获取连续区间初始化数据什么是CTE查询非递归CTE递归CTE递归CTE的限制三、总结四、参考零、前言今天是学习SQL打卡的第33天,每天我会提供一篇文章供群成员阅读(不需要订阅付钱)。希望大家先自己思考,如果实在没有想法,再看下面的解题思路,自己再实现一遍。在小虚竹JAVA社区中对应的【打卡贴】打卡,今天的任务就算完成了,养成每天学习打卡的好习惯。虚竹哥会组织大家一起学习同一篇文章,所以有什么问题都可以在群里问,群里的小伙伴可以迅速地帮到你,一个人可以走得很快,一群人可以走得很远,有一起学习交流的战友
ES简介学习文档地址:ElasticsearchGuide[7.16]|Elastic什么是全文检索(ElasticSearch)?全文检索属于最常见的需求,开源的ElasticSearch是目前全文检索引擎的首选。它可以快速的存储、搜索、分析海量数据。维基百科、StackOverFlow、Github都采用它。ElasticSearch的底层开源库Lucene。但是,你没有办法直接用Lucene,必须自己写代码去调用它的接口。ElasticSearch是Lucene的封装,提供了RESTAPI的操作接口,开箱即用。ElasticSearch的用途①应用程序搜索、网站搜索、企业搜索②日志处理和
ES简介学习文档地址:ElasticsearchGuide[7.16]|Elastic什么是全文检索(ElasticSearch)?全文检索属于最常见的需求,开源的ElasticSearch是目前全文检索引擎的首选。它可以快速的存储、搜索、分析海量数据。维基百科、StackOverFlow、Github都采用它。ElasticSearch的底层开源库Lucene。但是,你没有办法直接用Lucene,必须自己写代码去调用它的接口。ElasticSearch是Lucene的封装,提供了RESTAPI的操作接口,开箱即用。ElasticSearch的用途①应用程序搜索、网站搜索、企业搜索②日志处理和
目录0存储引擎介绍1SQL性能分析2常见通用的JOIN查询SQL执行加载顺序七种JOIN写法3索引介绍3.1索引是什么3.2索引优劣势3.3索引分类和建索引命令语句3.4索引结构与检索原理3.5哪些情况适合建索引3.6哪些情况不适合建索引4性能分析4.1性能分析前提知识4.2Explain使用简介4.3执行计划包含的信息字段解释(重中之重)id(表的读取顺序)select_type(数据读取操作的操作类型)table(显示执行的表名)type(访问类型排列)possible_keys(哪些索引可以使用)key(哪些索引被实际使用)key_len(消耗的字节数)ref(表之间的引用)rows(每
目录0存储引擎介绍1SQL性能分析2常见通用的JOIN查询SQL执行加载顺序七种JOIN写法3索引介绍3.1索引是什么3.2索引优劣势3.3索引分类和建索引命令语句3.4索引结构与检索原理3.5哪些情况适合建索引3.6哪些情况不适合建索引4性能分析4.1性能分析前提知识4.2Explain使用简介4.3执行计划包含的信息字段解释(重中之重)id(表的读取顺序)select_type(数据读取操作的操作类型)table(显示执行的表名)type(访问类型排列)possible_keys(哪些索引可以使用)key(哪些索引被实际使用)key_len(消耗的字节数)ref(表之间的引用)rows(每
1.反射1.1什么是反射python是一门动态语言,而反射机制被视为动态语言的关键!反射机制指的是:在程序的运行过程中,动态的获取程序的信息和对象的功能!‘动态’:指一开始不知道程序的信息和对象的功能,只有等到运行到那的时候才会动态获取!!!比如:x=18在程序运行的时候,python才会通过反射机制动态的获取到这个值是整型,并不需要一开始定义的时候,就规定这个18位整型!1.2为什么要用反射机制当我们获取一个对象时,很多场景下,我们是并不知道这个对象里面是有什么属性和方法的,我们需要通过反射机制,动态的获取到该对象的属性和方法!!案例:当我们在接收用户输入指令的时候,我们接收的是一个用户输入
1.反射1.1什么是反射python是一门动态语言,而反射机制被视为动态语言的关键!反射机制指的是:在程序的运行过程中,动态的获取程序的信息和对象的功能!‘动态’:指一开始不知道程序的信息和对象的功能,只有等到运行到那的时候才会动态获取!!!比如:x=18在程序运行的时候,python才会通过反射机制动态的获取到这个值是整型,并不需要一开始定义的时候,就规定这个18位整型!1.2为什么要用反射机制当我们获取一个对象时,很多场景下,我们是并不知道这个对象里面是有什么属性和方法的,我们需要通过反射机制,动态的获取到该对象的属性和方法!!案例:当我们在接收用户输入指令的时候,我们接收的是一个用户输入
1.执行流程mysql客户端先与服务器建立连接Sql语句通过解析器形成解析树再通过预处理器形成新解析树,检查解析树是否合法通过查询优化器将其转换成执行计划,优化器找到最适合的执行计划执行器执行sql2.MYISAM和InNoDB的区别MYISAM:不支持外键、不支持事务、表锁InNoDB:支持外键、支持事务、行锁3.什么是索引索引是数据结构索引的目的是提高查询效率4.索引的优劣势优势:提高数据检索的效率、降低数据排序和分组的成本劣势:降低更新表的速度、占用空间5.聚簇索引与非聚簇索引聚簇索引:叶子结点存储的是行数据非聚簇索引:叶子结点存储的是物理地址值,访问数据总是需要二次查找(回表)6.My
1.执行流程mysql客户端先与服务器建立连接Sql语句通过解析器形成解析树再通过预处理器形成新解析树,检查解析树是否合法通过查询优化器将其转换成执行计划,优化器找到最适合的执行计划执行器执行sql2.MYISAM和InNoDB的区别MYISAM:不支持外键、不支持事务、表锁InNoDB:支持外键、支持事务、行锁3.什么是索引索引是数据结构索引的目的是提高查询效率4.索引的优劣势优势:提高数据检索的效率、降低数据排序和分组的成本劣势:降低更新表的速度、占用空间5.聚簇索引与非聚簇索引聚簇索引:叶子结点存储的是行数据非聚簇索引:叶子结点存储的是物理地址值,访问数据总是需要二次查找(回表)6.My
目录一、为什么要有红黑树?二、什么是“平衡二叉查找树”?三、红黑树的定义四、为什么说红黑树是“近似平衡”的?五、红黑树为什么综合性能好?六、实现红黑树1、插入操作的平衡调整2、删除操作的平衡调整 1.针对删除节点初步调整2.针对关注节点进行二次调整3、小结 六、红黑树的应用场景红黑树已经落地的场景 一、为什么要有红黑树?二叉查找树是最常用的一种二叉树,它支持快速插入、删除、查找操作,各个操作的时间复杂度跟树的高度成正比,理想情况下,时间复杂度是O(logn)。但是,在已经有了性能不错的二叉搜索树,为什么还需要引入红黑树呢?那是因为,二叉查找树在频繁的动态更新过程中,可能会出现树的高度远大于lo