MySQL 索引 - 学习/实践

1.应用场景

主要学习索引结构,这里主要是你指Mysql索引,然后根据具体的业务场景,选择或创建合适的索引,期望达到优化数据库查询速,或者平衡查询速度与储存容量,从而开发出满足业务需求的服务。

2.介绍[多读两遍有好处]

1. 文档

MySQL 聚簇索引&&二级索引&&辅助索引 - wajika - 博客园   // MySQL 聚簇索引&&二级索引&&辅助索引

MYSQL的索引(主键索引、唯一索引、普通索引、全文索引)_jmx_bigdata的博客-CSDN博客_主键索引  // MYSQL的索引(主键索引、唯一索引、普通索引、全文索引)

MySQL 索引 - 选取索引[选错索引]_william_n的博客-CSDN博客_mysql 如何选择索引  // MySQL选取索引[选错索引]

23丨索引的概览:用还是不用索引,这是一个问题-极客时间 // 23丨索引的概览:用还是不用索引,这是一个问题

2. MySQL官方对索引的定义

索引(Index)是帮助MySQL高效获取数据数据结构

提取句子主干,就可以得到索引的本质:索引是数据结构。

我们知道,数据库查询是数据库的最主要功能之一。

我们都希望查询数据的速度能尽可能的快,因此数据库系统的设计者会从查询算法的角度进行优化

索引的本质目的是帮我们快速定位想要查找的数据。

3. 索引算法

最基本的查询算法当然是顺序查找(linear search),这种复杂度为O(n)的算法在数据量很大时显然是糟糕的,好在计算机科学的发展提供了很多更优秀的查找算法. 

例如:

二分查找(binary search),二叉树查找(binary tree search)等。

如果稍微分析一下会发现↓

每种查找算法都只能应用于特定的数据结构之上[算法与数据结构是不可以相互脱离的]。

例如↓

二分查找要求被检索数据有序;

二叉树查找只能应用于二叉查找树上;

但是数据本身的组织结构不可能完全满足各种数据结构(例如,理论上不可能同时将两列都按顺序进行组织)。

所以,在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据,这样就可以在这些数据结构上实现高级查找算法。这种数据结构,就是索引。

3. 分类

1. 从功能逻辑上划分

索引主要有 4 种,分别是普通索引唯一索引主键索引全文索引还有空间索引  // 20200820

主键索引 

是一种特殊的唯一索引,不允许有空值。

一般是在建表的时候指定了主键,就会创建主键索引, CREATE INDEX 不能用来创建主键索引,使用 ALTER TABLE 来代替。

唯一索引

与普通索引类似,不同的就是:索引列的值必须唯一,但允许有空值。

如果是组合索引,则列值的组合必须唯一。

普通索引

这是最基本的索引,它没有任何限制。

全文索引

FULLTEXT 索引用于全文搜索。

只有InnoDB和 MyISAM存储引擎支持 FULLTEXT索引,且仅适用于 CHAR, VARCHAR和 TEXT列.

空间索引

主要用于空间结构的数据, 如地理位置 [GIS], 普通索引对于一维数据(key->data)是无往不利,

可是面对空间数据(lon, lat->data)无能为力,空间索引为此而生.

再次描述:

普通索引是基础的索引,没有任何约束,主要用于提高查询效率。

唯一索引就是在普通索引的基础上增加了数据唯一性的约束,在一张数据表里可以有多个唯一索引。

主键索引在唯一索引的基础上增加了不为空的约束,也就是 NOT NULL+UNIQUE,一张表里最多只有一个主键索引。

全文索引用的不多,MySQL 自带的全文索引只支持英文。我们通常可以采用专门的全文搜索引擎,比如 ES(ElasticSearch) 和 Solr。

其实前三种索引(普通索引、唯一索引和主键索引)都是一类索引,只不过对数据的约束性逐渐提升。在一张数据表中只能有一个主键索引,这是由主键索引的物理实现方式决定的,因为数据存储在文件中只能按照一种顺序进行存储。但可以有多个普通索引或者多个唯一索引。

2. 按照物理实现方式划分

索引可以分为 2 种:

聚集索引和非聚集索引。

聚集索引 也称为 聚簇索引;

非聚集索引 也称为 二级索引 或者 辅助索引。

聚集索引是什么样?

聚集索引可以按照主键来排序存储数据,这样在查找行的时候非常有效。

举个例子

如果是一本汉语字典,我们想要查找“数”这个字,直接在书中找汉语拼音的位置即可,也就是拼音“shu”。这样找到了索引的位置,在它后面就是我们想要找的数据行。 

非聚集索引又是什么呢?

在数据库系统会有单独的存储空间存放非聚集索引,这些索引项是按照顺序存储的,但索引项指向的内容是随机存储的。

也就是说系统会进行两次查找,第一次先找到索引,第二次找到索引对应的位置取出数据行。

非聚集索引不会把索引指向的内容像聚集索引一样直接放到索引的后面,而是维护单独的索引表(只维护索引,不维护索引指向的数据),为数据检索提供方便。

我们还以汉语字典为例,

如果想要查找“数”字,那么按照部首查找的方式,先找到“数”字的偏旁部首,然后这个目录会告诉我们“数”字存放到第多少页,我们再去指定的页码找这个字。

聚集索引指表中数据行按索引的排序方式进行存储,对查找行很有效。

只有当表包含聚集索引时,表内的数据行才会按照索引列的值在磁盘上进行物理排序和存储。

每一个表只能有一个聚集索引,因为数据行本身只能按一个顺序存储。

其实可以通过修改配置参数来调整索引的存储结构

稀疏索引和稠密索引你了解吗? - 知乎 -- 注意,正文内容是有问题的,查看评论

简单说, 一个占用空间小查询效率相对低,一个查询效率高,存储空间比较大,用法是在创建索引的时候进行设置参数

评论一:

个人不太认同的你的说法【即正文观点】,首先对密集索引和稀疏索引的区分在于是否为每个索引键的值都建立索引,简单来说就是比如有一列的值如下:

1、2、3、4、5、6、7

密集索引的做法是为这7个值建立索引记录,那么就有7条索引记录,抽象索引记录如下:

1:到1的指针

2:到2的指针

....

7:到7的指针

稀疏索引的做法是将这个6个值分组,1、2、3和4、5、6和7分为不同的3组,取这三组中最小的索引键值作为索引记录中的索引值,抽象索引记录如下:

1:到顺序存储1、2、3的起始位置的指针

4:到顺序存在4、5、6的起始位置的指针

7:到顺序存储7的起始位置的指针

这两种索引都要通过折半查找或者叫做二分查找来确定数据位置,不同的是密集索引,只需要通过二分查找到搜索值=索引的索引记录就能确定准确的数据位置,而稀疏索引则需要先定位到搜索值>索引值的最小的那个,然后在通过起始位置去定位具体的偏移量。

这是两种不同的索引实现,一种建立了索引值与数据位置的1:1的关系,一种建立了索引值与数据位置1:n的关系。在大多数场景密集索引查询效率更高,在大多数场景稀疏索引占用空间更小。

评论二:

你完全说反了…机械工业出版社《数据库系统概念(原书第6版)》P269倒数第5行原话“只有索引是聚集索引时,才能使用稀疏索引”;P272最后1行原话“辅助索引必须是稠密索引,··· 而聚集索引可以是稀疏索引”。也就是,稠密索引可聚可非聚,聚集索引可稀可密,但不存在既非聚集又稀疏的索引。

① 上述教材P269倒数第5行原话“只有索引是聚集索引时才能使用稀疏索引”=稀疏索引必须是聚集索引;P272最后1行原话“辅助索引必须是稠密索引”=非聚集索引必须是稠密索引。② 稀疏索引必须是聚集索引+非聚集索引必须是稠密索引=“不存在既非聚集又稀疏的索引”

InnoDB的叶子和数据分开是非聚集,但仍然稠密

问一下"InnoDB的叶子和数据分开",分开不分开不是判断是否是聚集索引的关键因素吧?

对,“分开不分开”不是判断聚集与否的关键因素,我提到这个只是因为上面那条评论里提了,我是在回复

还是放截图 --- 需要验证 --- 从理论和实践方面    20220123 周日 家里

扩展

MySQL中每个表都有一个聚簇索引(clustered index ),除此之外的表上的每个非聚簇索引都是二级索引,又叫辅助索引(secondary indexes)。

以InnoDB来说,每个InnoDB表具有一个特殊的索引称为聚集索引

如果您的表上定义有主键,该主键索引是聚集索引。

如果你不定义为您的表的主键时,MySQL取第一个唯一索引(unique)而且只含非空列(NOT NULL)作为主键,InnoDB使用它作为聚集索引。

如果没有这样的列,InnoDB就自己产生一个这样的ID值,它有六个字节,而且是隐藏的,使其作为聚簇索引。

3. 按照字段个数进行划分

索引可分成单一索引和联合索引。

索引列为一列时为单一索引;

多个列组合在一起创建的索引叫做联合索引。

Note

创建联合索引时,我们需要注意创建时的顺序问题,因为联合索引 (x, y, z) 和 (z, y, x) 在使用的时候效率可能会存在差别。

这里需要说明的是联合索引存在最左匹配原则,也就是按照最左优先的方式进行索引的匹配。

比如刚才举例的 (x, y, z),如果查询条件是 WHERE x=1 AND y=2 AND z=3,就可以匹配上联合索引;如果查询条件是 WHERE y=2,就无法匹配上联合索引。

后续补充

...

4. 总结

使用索引可以帮助我们从海量的数据中快速定位想要查找的数据,

不过索引也存在一些不足,比如占用存储空间、降低数据库写操作的性能等,如果有多个索引还会增加索引选择的时间。

当我们使用索引时,需要平衡索引的利(提升查询效率)和弊(维护索引所需的代价)。

在实际工作中,我们还需要基于需求和数据本身的分布情况来确定是否使用索引,尽管索引不是万能的,但数据量大的时候不使用索引是不可想象的,毕竟索引的本质,是帮助我们提升数据检索的效率。

chatgpt的回答:

常见的索引类型包括:

  1. B-tree 索引:B-tree 索引是一种平衡树结构,适合用于范围查询和等值查询。它可以快速定位到符合条件的记录,但在模糊查询和全文搜索等场景下表现欠佳。

  2. 哈希索引:哈希索引是一种基于哈希表的索引结构,适合用于等值查询。它可以快速定位到符合条件的记录,但在范围查询和模糊查询等场景下表现欠佳。

  3. 全文索引:全文索引是一种用于文本搜索的索引结构,适合用于模糊查询和全文搜索。它可以处理自然语言查询,但在范围查询和等值查询等场景下表现欠佳。

  4. 空间索引:空间索引是一种用于地理位置搜索的索引结构,适合用于处理地理位置数据。它可以处理距离查询、范围查询等查询,但在等值查询场景下表现欠佳。

  5. 组合索引:组合索引是一种将多个字段组合在一起的索引结构,适合用于处理多个条件的查询。它可以提高查询效率,但需要根据查询需求来设计合适的组合方式。

  6. 聚簇索引:聚簇索引是一种将数据按照索引顺序存储的索引结构,适合用于范围查询和等值查询。它可以提高查询效率,但会影响插入和更新数据的效率。

  7. 非聚簇索引:非聚簇索引是一种将索引和数据分开存储的索引结构,适合用于处理大量的数据。它可以提高查询效率,但需要额外的存储空间。

总之,不同的索引类型适用于不同的场景。在实际操作中,需要根据查询需求和数据特点来选择最合适的索引类型和字段。

5. 问题/补充

1. 为什么用了索引,查询还是慢?

MySQL 索引 - 为什么用了索引,查询还是慢?_william_n的博客-CSDN博客_mysql加了索引查询还是很慢

2. 索引失效的情况有哪些?[汇总篇]

索引失效指的是索引在某些情况下无法被使用,从而导致查询效率下降。

常见的索引失效情况包括:

  1. 值过于分散:如果索引列的值过于分散,即某个值出现的频率非常低,那么使用索引查询时可能会导致扫描大量的数据块,从而降低查询效率。

  2. 使用函数或表达式:如果在查询中使用了函数或表达式,如对索引列进行了运算或类型转换,那么索引可能无法被使用,导致查询效率下降。

  3. 模糊查询:如果查询中使用了模糊匹配,如使用 LIKE 操作符,那么索引可能无法被使用,导致查询效率下降。

  4. 条件使用了 NOT:如果查询中使用了 NOT 操作符,那么索引可能无法被使用,导致查询效率下降。

  5. 多列查询:如果查询中使用了多个列,但是索引只覆盖了部分列,那么查询时可能会导致全表扫描,从而降低查询效率。

  6. 数据量过大:如果数据量非常大,那么即使使用索引查询也可能会导致扫描大量的数据块,从而降低查询效率。

总之,索引失效可能会导致查询效率下降,影响系统性能。

在实际操作中,需要注意索引的设计和使用,避免出现索引失效的情况,从而保证查询效率和系统性能。

3. 如何看待关于聚集索引就是主键的说法?

说主键就是聚集索引的说法,是具有误导性的。

[其实我们生活中有很多事情都是有误导性的,有些我们知道我们知道, 有些我们知道我们不知道, 有些我们不知道我们知道,还有些我们不知道我们不知道]

具体见上面关于聚簇索引的规则即可

简单说,聚簇索引不一定是主键索引,

可能是唯一索引,也可能是InnoDB自己产生聚簇索引

4. 关于联合索引的最左原则指的是什么

网友-DZ

联合索引的最左原则就是说,索引是一种顺序结构,我们按照什么顺序创建索引,就只能按照这个顺序使用索引,这容易理解。

假设我们有X、Y、Z三个字段,创建联合索引(X, Y, Z),可以理解成,数据库按照不同的权重排列了XYZ,形成了一个新值。

如果把X、Y、Z分别类别成“百分位”、“十分位”和“个位”,则新值XYZ依次排列在索引上。

查询“X=9 AND Y=8 AND Z=7”的过程,就是在一个由小到大排列的数值序列中寻找“987”,可以很快找到。

查询“Y=8 AND Z=7”,就用不上索引了,因为可能存在187、287、387、487...,这样就必须扫描所有数值。

查询“Z=7 AND Y=8 AND X=9”,看上去所有字段都用上了,也可以按照百分位、十分位和个数的逻辑去利用索引,但SQL不会自动识别出联合索引顺序与联合查询的顺序,它会严格地按照字面顺序去套用索引,只要不匹配,就不用。

综上,使用联合索引的时候,字段顺序不能乱,查询字段可以少,但只能从右侧开始减少,不能从左侧。

这就像按顺序查数值,先找高位再找低位(索引扫描),如果先找十分位或者先找个位,那就只能每个数值都看一下(全扫描)。

作者回复:

这个比喻解释的很形象,另外在这个基础上还需要说明下:
1)SQL条件语句中的字段顺序不重要,因为在逻辑查询优化阶段会自动进行 查询重写。
2)如果我们遇到了范围条件查询,比如<、<=、>、>=、between等。那么范围列后的列就无法使用到索引

5.  网友疑问

峻铭

使用聚集索引的时候,数据的查询效率高,但如果对数据进行插入,删除,更新等操作,效率会比非聚集索引低。

对这句话我不明白,为什么插入、删除、更新等操作,效率会比非聚集索引低,这三个操作内部都是先进行了查询的,聚集索引属于存储结构的物理索引,查询效率高,自然插入、删除、更新的效率也高啊。

实在不解

作者回复

聚集索引是面向读取的设计,因为我们的数据会按照聚集索引的大小顺序写入到磁盘,因此聚集索引会存在存储顺序的问题。而我们更新,插入的内容往往都是随机的,这时如果我们还是用聚集索引,所有的记录就需要重新进行排序并重新写入到磁盘中,所以效率相比于非聚集索引可能会降低。
而非聚集索引只是存储索引,我们只需要更新这个索引即可,不需要对所有的记录重新排序。

看过作者的回复,同样有些不解,仍然需要继续查找资料去学习,理解掌握

这里也分析一下个人不解以及认为他人不解的共同原因: 

根本原因就是对聚集索引和非聚集索引的数据结构理解不到位,没有理解他们之间的区别,

然后是数据记录本身与索引数据在磁盘存储的问题,而且相邻的记录在磁盘上存储一定是相邻的吗?

当然,我不得不说,作者的讲解方式不是很好,或者说,他没有理解问题产生的根本原因~

...

6.参考

MySQL 聚簇索引&&二级索引&&辅助索引 - wajika - 博客园   // MySQL 聚簇索引&&二级索引&&辅助索引

MYSQL的索引(主键索引、唯一索引、普通索引、全文索引)_jmx_bigdata的博客-CSDN博客_主键索引  // MYSQL的索引(主键索引、唯一索引、普通索引、全文索引)

MySQL 索引 - 选取索引[选错索引]_william_n的博客-CSDN博客_mysql 如何选择索引  // MySQL选取索引[选错索引]

23丨索引的概览:用还是不用索引,这是一个问题-极客时间 // 23丨索引的概览:用还是不用索引,这是一个问题

后续补充...

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/40191.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AIGC时代,前端低代码平台的实践与挑战 | 6月15日TF109报名

本期技术前线邀请到阿里巴巴高级前端工程师吉婉颖&#xff08;翊奕&#xff09;、网易杭州研究院编程语言实验室负责人张炜昕、腾讯PCG智能创作与内容平台技术专家揭光发3位专家&#xff0c;围绕前端低代码平台&#xff0c;一起分享他们的前端技术工作经历以及如何运用到具体业…

会议交流 | 大语言模型时代的知识工程(TF97)

转载公众号 | 中国计算机学会 本期会议邀请到来自360等头部企业的技术资深人士&#xff0c;以及来自海乂知等知识图谱创业企业的技术负责人和来自复旦大学、东南大学等高校的顶尖学者&#xff0c;一起深入探讨知识工程在大语言模型时代所面临的机遇和挑战&#xff0c;并进一步了…

​GPT-4 发布:在考试中击败 90% 的人类;谷歌开放大语言模型 PaLM API;FireFox 111 发布|极客头条...

「极客头条」—— 技术人员的新闻圈&#xff01; CSDN 的读者朋友们早上好哇&#xff0c;「极客头条」来啦&#xff0c;快来看今天都有哪些值得我们技术人关注的重要新闻吧。 整理 | 梦依丹 出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09; 一分钟速览新闻点&#…

网络安全从业人员会被AI智能取代吗?

随着ChatGPT的火爆&#xff0c;很多人开始担心网络安全从业人员会被AI取代。如果说网络安全挖洞的话&#xff0c;AI可能真的能取代。但是网络安全不仅仅只是挖洞&#xff0c;所以AI只是能缓解网络安全人员不足的情况&#xff0c;但是是不会取代人类的作用的。 就拿最近很火的C…

网络安全从业人员2023年后真的没有活路了吗?会被AI取代吗?

​AI能缓解网络安全人员不足的情况&#xff0c;但是是不会取代人类的作用的。 就拿最近很火的ChatGPT来说&#xff0c;确实能进行恶意攻击&#xff0c;但是前提也是在人类的干预下。 黑莓公司曾经发布过一篇研究报告表明由人工智能驱动的ChatGPT机器人可能会对网络安全产生威…

Android版ChatGPT将于本周发;C-Eval中文大模型排名公布;我国发布首份汽车标准必要专利研究报告丨每日大事件...

‍ ‍数据智能产业创新服务媒体 ——聚焦数智 改变商业 企业动态 理想汽车郎咸朋&#xff1a;截至7月20日&#xff0c;NOA辅助驾驶使用里程已突破2亿公里 7月24日消息&#xff0c;据悉&#xff0c;理想汽车自动驾驶负责人郎咸朋在其个人朋友圈发文&#xff0c;截至2023年7月20…

让GPT-4推理提升17倍的技巧!普林斯顿清华姚班校友提出全新「思维树ToT」框架,让LLM反复思考

夕小瑶科技说 分享 来源 | 新智元 由普林斯顿和谷歌DeepMind联合提出的全新「思维树」框架&#xff0c;让GPT-4可以自己提案、评估和决策&#xff0c;推理能力最高可提升1750%。 2022年&#xff0c;前谷歌大脑华人科学家Jason Wei在一篇思维链的开山之作中首次提出&#xff0c…

AI 工具合辑盘点(七)持续更新 之 AI 音频生成工具

AI 音频生成工具 想要不亲自录制&#xff0c;快速将文本转换为语音&#xff1f;AI 音频生成工具为你提供数千种语音选择&#xff0c;从“普通人”的声音到模仿演员、政治家或电影角色的合成声音&#xff0c;各种声音应有尽有 &#x1f5e3; AI 音频生成工具可用于创建商业用途…

劳特巴赫trace32安装和使用

目录 劳特巴赫trace32安装 劳特巴赫使用 trace32调试 劳特巴赫trace32安装 安装说明&#xff1a;安装时需要连接上劳特巴赫调试器 默认步骤 劳特巴赫使用 打开你使用的内核调试器USB 1. SystemSetting可找到单片机型号 &#xff0c;点击 CPU --> SystemSetting&#xff…

SMT工厂及PCB工程师的福音!可视化BOM交互焊接工具来了

目前电子产品已经渗透到我们生活的各个角落&#xff0c;其产品涵盖通信、医疗、计算机及周边视听产品、玩具、家用电器、军工用品等。关于电子产品的PCBA焊接&#xff0c;在试样阶段一般采用手工焊接。手工焊接的好处是成本低&#xff0c;一把电络铁就搞定了&#xff0c;如果样…

车牌识别--铆钉的去除

车牌识别中&#xff0c;每一步的效果直接影响整体的识别率&#xff0c;对车牌识别产生干扰的&#xff0c;不仅是车牌的污渍&#xff0c;还有铆钉。 一 、举例说明&#xff0c;铆钉干扰使得车牌识别错误 1、车辆图片 2、通过颜色HSV确认车牌大致位置 3、截取车牌图像 4、二值化…

ChatGPT最强竞品Claude-2重磅升级!知识更新到23年,代码数学显著提升,免费可用

夕小瑶科技说 分享 来源 | 机器之心 此次&#xff0c;Claude 2 除了一大波能力上的升级&#xff0c;更重要的是大家都可以用了。 今日&#xff0c;那个被很多网友称为「ChatGPT 最强竞品」的人工智能系统 Claude 迎来了版本大更新。 Claude 2 正式发布&#xff01; 据介绍&a…

第09课:《ChatGPT提示工程》—— Introduction(引言)

ChatGPT 上线至今&#xff0c;在实际应用中&#xff0c;不少人还没真正掌握它的使用技巧。ChatGPT 的难点&#xff0c;在于 Prompt&#xff08;提示词&#xff09;的编写&#xff0c;OpenAI 创始人在今年 2 月时&#xff0c;在 Twitter 上说&#xff1a;「能够出色编写 Prompt …

视觉合集5~2022

发一个合集 总结一些2022年的 一些论文 视觉 Transformer&#xff08;ViT&#xff09;学习什么&#xff1f; 论文链接&#xff1a;https://arxiv.org/pdf/2212.06727.pdf 关于视觉的探索显示&#xff0c;ViT 学习的归纳偏置或特征与卷积神经网络&#xff08;CNN&#xff09;学…

2022年最值得关注的十篇论文,你都看了吗?来卷来学习

2023 点击蓝字 关注我们 关注并星标 从此不迷路 计算机视觉研究院 计算机视觉研究院专栏 作者&#xff1a;Edison_G 年关将至&#xff0c;威斯康星大学助理教授 Sebastian Raschka 盘点了 2022 年他最看好的十大论文。 公众号ID&#xff5c;ComputerVisionGzq 学习群&#xff5…

2022年盘点:最值得关注的十篇机器学习论文

来源&#xff1a;机器之心 计算机视觉与机器学习 本文约4000字&#xff0c;建议阅读8分钟 威斯康星大学助理教授 Sebastian Raschka 盘点了 2022 年他最看好的十大论文。 2022 年 1 月&#xff0c;扩散模型第一次吸引了我的眼球。当时我判断到将会有某些大事发生&#xff0c;然…

pycharm 黄色(黄字)高亮警告 Default argument value is mutable 原因及解决办法(mutable 可变对象与 immutable不可变对象)

示例 解决方案 按照参考文章的意思&#xff0c;classesread_class_names(cfg.YOLO.CLASSES&#xff09;在函数调用时就会创建对象并赋初始值&#xff0c;如果在函数中修改了classes的值&#xff0c;则函数在下一次调用时&#xff0c;就会不会重新初始化值&#xff0c;而以上一…

平面设计之条幅篇

我的博客&#xff0c;我的原创&#xff0c;希望大家能够喜欢 我不是一个真正的美工&#xff0c;但我在社团组织干的是美工的任务&#xff1b; 我不是一个真正的UI&#xff0c;但我在实验室干的是UI的任务&#xff1b; 我不是一个真正的视频制作者&#xff0c;但我在工作室干的是…

做word计算机海报图片,怎么用word制作海报 海报制作方法

一般情况下我们制作海报肯定是使用专业的工具来做了&#xff0c;像photoshop或CoreldRAW来做&#xff0c;但对于我们来讲有时并不需要这么专业的工具来做&#xff0c;我们可以使用word简单制作出漂亮的海报哦。 1.我们先打开要制作海报的word文档之后我们再点击“页面设置”——…