我在广州学 Mysql 系列——与索引相关的练习题

ℹ️大家好,我是练小杰,今天星期二啦,还有三天就是星期五了,为了美好生活奋斗吧朋友们!
本文将学习MYSQL中数据表内容的索引相关练习题目~~
复习:👉【索引详解】
数据库专栏👉【数据库专栏】~
想要了解更多内容,主页 【练小杰的CSDN】

老爹:“还有一件事!!!”——跟练小杰学习MySQL~~
在这里插入图片描述

文章目录

  • 定义表并建立索引
    • 建立普通索引
    • 创建唯一索引
    • 创建单列索引
    • 建立组合索引
      • ⚠️注意
    • 创建全文索引
    • 创建空间索引
  • 表创建后使用ALTER TABLE创建索引
    • 普通索引
    • 唯一索引
    • 单列索引
    • 组合索引
    • 全文索引
    • 空间索引
  • 表创建后使用CREATE INDEX创建索引
    • 普通索引
    • 唯一索引
    • 单列索引
    • 组合索引
    • 全文索引
    • 空间索引
  • 删除索引
    • 使用ALTER TABLE删除索引
    • 删除book表中的名称为UniqidIdx的唯一索引
    • 使用DROP INDEX语句删除索引
    • 删除book表中名称为BkAuAndInfoIdx的组合索引

在这里插入图片描述

定义表并建立索引

建立普通索引

  • 在book表中的year_publication字段上建立普通索引
    SQL语句如下:
CREATE TABLE book
(
bookid            	INT NOT NULL,
bookname          	VARCHAR(255) NOT NULL,
authors            	VARCHAR(255) NOT NULL,
info               	VARCHAR(255) NULL,
comment           	VARCHAR(255) NULL,
year_publication   	YEAR NOT NULL,
INDEX(year_publication)
);
  • 该sql 语句执行完之后,使用SHOW CREATE TABLE查看表结构:
 SHOW CREATE table book \G;
*************************** 1. row ***************************Table: book
Create Table: CREATE TABLE `book` (`bookid` int NOT NULL,`bookname` varchar(255) NOT NULL,`authors` varchar(255) NOT NULL,`info` varchar(255) DEFAULT NULL,`comment` varchar(255) DEFAULT NULL,`year_publication` year NOT NULL,KEY `year_publication` (`year_publication`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
1 row in set (0.02 sec)

由结果可以看到,book表的year_publication字段上成功建立索引,其索引名称year_publication为MySQL自动添加。

  • 使用EXPLAIN语句查看索引是否正在使用
explain select * from book where year_publication=1990 \G;
*************************** 1. row ***************************id: 1select_type: SIMPLEtable: bookpartitions: NULLtype: ref
possible_keys: year_publicationkey: year_publicationkey_len: 1ref: constrows: 1filtered: 100.00Extra: NULL
1 row in set, 1 warning (0.00 sec)

type 为显示连接的类型,如果 type 是 ALL,说明没有使用索引;如果是 range 或 ref,说明使用了索引。
可以看到,上面的type类型为ref,说明使用了索引进行等值查找。

创建唯一索引

  • 创建一个表t1,在表中的id字段上使用UNIQUE关键字创建唯一索引
CREATE TABLE t1
(
id    INT NOT NULL,
name CHAR(30) NOT NULL,
UNIQUE INDEX UniqIdx(id)
);
  • sql语句执行完之后,使用SHOW CREATE TABLE查看表结构:
 SHOW CREATE table t1 \G;
*************************** 1. row ***************************Table: t1
Create Table: CREATE TABLE `t1` (`id` int NOT NULL,`name` char(30) NOT NULL,UNIQUE KEY `UniqIdx` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
1 row in set (0.01 sec)

由结果可以看到,id字段上已经成功建立了一个名为UniqIdx的唯一索引。

创建单列索引

  • 创建一个表t2,在表中的name字段上创建单列索引
    表结构如下:
CREATE TABLE t2
(
id   INT NOT NULL,
name CHAR(50) NULL,
INDEX SingleIdx(name(20))
);
  • sql 语句执行完毕之后,使用SHOW CREATE TABLE查看表结构:
 SHOW CREATE table t2 \G;
*************************** 1. row ***************************Table: t2
Create Table: CREATE TABLE `t2` (`id` int NOT NULL,`name` char(50) DEFAULT NULL,KEY `SingleIdx` (`name`(20))
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
1 row in set (0.02 sec)

由结果可以看到,id字段上已经成功建立了一个名为SingleIdx的单列索引,索引长度为20

建立组合索引

  • 创建表t3,在表中的id、name和age字段上建立组合索引
    SQL语句如下:
CREATE TABLE t3
(
id    INT NOT NULL,
name CHAR(30)  NOT NULL,
age  INT NOT NULL,
info VARCHAR(255),
INDEX MultiIdx(id, name, age(100))
);
  • 该语句执行完毕之后,使用SHOW CREATE TABLE查看表结构:
 SHOW CREATE table t3 \G
*************************** 1. row ***************************Table: t3
CREATE Table: CREATE TABLE `t3` (`id` int(11) NOT NULL,`name` char(30) NOT NULL,`age` int(11) NOT NULL,`info` varchar(255) DEFAULT NULL,KEY `MultiIdx` (`id`,`name`,`age`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

由结果可以看到,id、name和age字段上已经成功建立了一个名为MultiIdx的组合索引。

⚠️注意

  • 组合索引可起几个索引的作用,但是使用时并不是随便查询哪个字段都可以使用索引,而是遵从“最左前缀”:利用索引中最左边的列集来匹配行,这样的列集称为最左前缀。
  • 上述由id、name和age 3个字段构成的索引,索引行中按id/name/age的顺序存放,索引可以搜索下面字段组合:(id, name, age)、(id, name)或者id。如果列不构成索引最左面的前缀,MySQL不能使用局部索引,如(age)或者(name,age)组合则不能使用索引查询。
  • 在t3表中,查询id和name字段,使用EXPLAIN语句查看索引的使用情况:
 explain select * from t3 where id=1 AND name='joe' \G
*************************** 1. row ***************************id: 1select_type: SIMPLEtable: t3type: ref
possible_keys: MultiIdxkey: MultiIdxkey_len: 94ref: const,constrows: 1Extra: Using where
1 row in set (0.00 sec)

可以看到,查询id和name字段时,使用了名称MultiIdx的索引

  • 查询(name,age)组合或者单独查询name和age字段,结果如下:
*************************** 1. row ***************************id: 1select_type: SIMPLEtable: t3type: ALL
possible_keys: NULLkey: NULLkey_len: NULLref: NULLrows: 1Extra: Using where

可以发现,possible_keys和key值为NULL,并没有使用在t3表中创建的索引进行查询。

创建全文索引

FULLTEXT全文索引可以用于全文搜索。只有MyISAM存储引擎支持FULLTEXT索引,并且只为CHAR、VARCHAR和TEXT列。索引总是对整个列进行,不支持局部(前缀)索引。

  • 创建表t4,在表中的info字段上建立全文索引,SQL语句如下:
CREATE TABLE t4
(
id    INT NOT NULL,
name CHAR(30) NOT NULL,
age  INT NOT NULL,
info VARCHAR(255),
FULLTEXT INDEX FullTxtIdx(info)
) ENGINE=MyISAM;

因为MySQL5.6中默认存储引擎为InnoDB,在这里创建表时需要修改表的存储引擎为MyISAM,不然创建索引会出错。

  • sql语句执行完之后,使用SHOW CREATE TABLE查看表结构:
 SHOW CREATE table t4 \G
*************************** 1. row ***************************Table: t4
Create Table: CREATE TABLE `t4` (`id` int NOT NULL,`name` char(30) NOT NULL,`age` int NOT NULL,`info` varchar(255) DEFAULT NULL,FULLTEXT KEY `FullTxtIdx` (`info`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
1 row in set (0.00 sec)

由结果可以看到,info字段上已经成功建立了一个名为FullTxtIdx的FULLTEXT索引。全文索引非常适合于大型数据集,对于小的数据集,它的用处可能比较小。

创建空间索引

空间索引必须在MyISAM类型的表中创建,且空间类型的字段必须为非空。

  • 创建表t5,在空间类型为GEOMETRY的字段上创建空间索引
    SQL语句如下:
CREATE TABLE t5
( g GEOMETRY NOT NULL, SPATIAL INDEX spatIdx(g) )ENGINE=MyISAM;
  • 该语句执行完毕之后,使用SHOW CREATE TABLE查看表结构:
 SHOW CREATE table t5 \G
*************************** 1. row ***************************Table: t5
Create Table: CREATE TABLE `t5` (`g` geometry NOT NULL,SPATIAL KEY `spatIdx` (`g`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
1 row in set (0.00 sec)

表创建后使用ALTER TABLE创建索引

普通索引

  • 在book表中的bookname字段上建立名为BkNameIdx的普通索引,SQL语句如下:
ALTER TABLE book ADD INDEX BkNameIdx ( bookname(30));
  • 添加索引之前,使用SHOW INDEX语句查看指定表中创建的索引:
 SHOW INDEX FROM book \G*************************** 1. row ***************************Table: bookNon_unique: 1Key_name: year_publicationSeq_in_index: 1Column_name: year_publicationCollation: ACardinality: 0Sub_part: NULLPacked: NULLNull:Index_type: BTREEComment:
Index_comment:Visible: YESExpression: NULL
1 row in set (0.01 sec)
  • 下面使用ALTER TABLE 在bookname字段上添加索引,SQL语句如下:
ALTER TABLE book ADD INDEX BkNameIdx( bookname(30) );
  • 使用SHOW INDEX语句查看表中的索引:
 SHOW INDEX FROM book \G

查询结果如下:

*************************** 1. row ***************************Table: bookNon_unique: 1Key_name: year_publicationSeq_in_index: 1Column_name: year_publicationCollation: ACardinality: 0Sub_part: NULLPacked: NULLNull:Index_type: BTREEComment:
Index_comment:Visible: YESExpression: NULL
*************************** 2. row ***************************Table: bookNon_unique: 1Key_name: BkNameIdxSeq_in_index: 1Column_name: booknameCollation: ACardinality: 0Sub_part: 30Packed: NULLNull:Index_type: BTREEComment:
Index_comment:Visible: YESExpression: NULL
2 rows in set (0.01 sec)

唯一索引

  • 在book表的bookId字段上建立名称为UniqidIdx 的唯一索引,SQL语句如下:
ALTER TABLE book ADD UNIQUE INDEX UniqidIdx ( bookId );
  • 使用SHOW INDEX语句查看表中的索引:
 SHOW INDEX FROM book \G*************************** 1. row ***************************Table: bookNon_unique: 0Key_name: UniqidIdxSeq_in_index: 1Column_name: bookidCollation: ACardinality: 0Sub_part: NULLPacked: NULLNull:Index_type: BTREEComment:
Index_comment:Visible: YESExpression: NULL
*************************** 2. row ***************************Table: bookNon_unique: 1Key_name: year_publicationSeq_in_index: 1Column_name: year_publicationCollation: ACardinality: 0Sub_part: NULLPacked: NULLNull:Index_type: BTREEComment:
Index_comment:Visible: YESExpression: NULL
*************************** 3. row ***************************Table: bookNon_unique: 1Key_name: BkNameIdxSeq_in_index: 1Column_name: booknameCollation: ACardinality: 0Sub_part: 30Packed: NULLNull:Index_type: BTREEComment:
Index_comment:Visible: YESExpression: NULL
3 rows in set (0.01 sec)

单列索引

  • 在book表的comment字段上建立单列索引,SQL语句如下:
ALTER TABLE book ADD INDEX BkcmtIdx ( comment(50) );
  • 使用SHOW INDEX语句查看表中的索引,看到表格第四排:
SHOW INDEX FROM book \G

查询结果为:

*************************** 4. row ***************************Table: bookNon_unique: 1Key_name: BkcmtIdxSeq_in_index: 1Column_name: commentCollation: ACardinality: 0Sub_part: 50Packed: NULLNull: YESIndex_type: BTREEComment:
Index_comment:Visible: YESExpression: NULL
4 rows in set (0.01 sec)

组合索引

  • 在book表的authors和info字段上建立组合索引,SQL语句如下:
ALTER TABLE book ADD INDEX BkAuAndInfoIdx ( authors(20),info(50) ); 
  • 使用SHOW INDEX语句查看表中的索引,看到表格第五、六排:
SHOW INDEX FROM book \G
*************************** 5. row ***************************Table: bookNon_unique: 1Key_name: BkAuAndInfoIdxSeq_in_index: 1Column_name: authorsCollation: ACardinality: 0Sub_part: 20Packed: NULLNull:Index_type: BTREEComment:
Index_comment:Visible: YESExpression: NULL
*************************** 6. row ***************************Table: bookNon_unique: 1Key_name: BkAuAndInfoIdxSeq_in_index: 2Column_name: infoCollation: ACardinality: 0Sub_part: 50Packed: NULLNull: YESIndex_type: BTREEComment:
Index_comment:Visible: YESExpression: NULL
6 rows in set (0.01 sec)

全文索引

创建表t6,在t6表上使用ALTER TABLE创建全文索引,SQL语句如下:

  • 创建表t6,sql语句如下
CREATE TABLE t6
(
id    INT NOT NULL,
info  CHAR(255)
) ENGINE=MyISAM;

⚠️注意修改ENGINE参数为MyISAM,MySQL默认引擎InnoDB不支持全文索引。

  • 使用ALTER TABLE语句在info字段上创建全文索引:
ALTER TABLE t6 ADD FULLTEXT INDEX infoFTIdx ( info );

使用SHOW INDEX语句查看索引:

 SHOW index from t6 \G*************************** 1. row ***************************Table: t6Non_unique: 1Key_name: infoFTIdxSeq_in_index: 1Column_name: infoCollation: NULLCardinality: NULLSub_part: NULLPacked: NULLNull: YESIndex_type: FULLTEXTComment:
Index_comment:Visible: YESExpression: NULL
1 row in set (0.01 sec)

空间索引

  • 创建表t7,在t7的空间数据类型字段g上创建名称为spatIdx的空间索引
    SQL语句如下:
CREATE TABLE t7 ( g GEOMETRY NOT NULL )ENGINE=MyISAM;
  • 使用ALTER TABLE在表t7的g字段建立空间索引:
ALTER TABLE t7 ADD SPATIAL INDEX spatIdx(g);
Query OK, 0 rows affected, 1 warning (0.05 sec)
Records: 0  Duplicates: 0  Warnings: 1
  • 使用SHOW INDEX语句查看索引:
 SHOW index from t7 \G*************************** 1. row ***************************Table: t7Non_unique: 1Key_name: spatIdxSeq_in_index: 1Column_name: gCollation: ACardinality: NULLSub_part: 32Packed: NULLNull:Index_type: SPATIALComment:
Index_comment:Visible: YESExpression: NULL
1 row in set (0.01 sec)

表创建后使用CREATE INDEX创建索引

  • CREATE INDEX语句可以在已经存在的表上添加索引,MySQL中CREATE INDEX被映射到一个ALTER TABLE语句上
  • 基本语法结构为:
CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name
ON table_name (col_name[length],) [ASC | DESC]

可以看到CREATE INDEX语句和ALTER INDEX语句的语法基本一样,只是关键字不同。

  • 在这里,使用相同的表book,假设该表中没有任何索引值,创建book表语句如下:
CREATE TABLE book
(
bookid          	INT NOT NULL,
bookname        	VARCHAR(255) NOT NULL,
authors           	VARCHAR(255) NOT NULL,
info              	VARCHAR(255) NULL,
comment          	VARCHAR(255) NULL,
year_publication   	YEAR NOT NULL
);

⚠️提示:先可以将该数据库中的book表删除,按上面的语句重新建立,然后进行下面的操作。

普通索引

  • 在book表中的bookname字段上建立名为BkNameIdx的普通索引,SQL语句如下:
CREATE INDEX BkNameIdx ON book(bookname);

语句执行完毕之后,将在book表中创建名称为BkNameIdx的普通索引。

  • 可以使用SHOW INDEX或者SHOW CREATE TABLE语句查看book表中的索引,其索引内容与前面介绍相同。
SHOW INDEX from  book \G 
*************************** 1. row ***************************Table: bookNon_unique: 1Key_name: BkNameIdxSeq_in_index: 1Column_name: booknameCollation: ACardinality: 0Sub_part: NULLPacked: NULLNull:Index_type: BTREEComment:
Index_comment:Visible: YESExpression: NULL
1 row in set (0.01 sec)

唯一索引

  • 在book表的bookId字段上建立名称为UniqidIdx 的唯一索引
    SQL语句如下:
CREATE UNIQUE INDEX UniqidIdx  ON book ( bookId );

语句执行完毕之后,将在book表中创建名称为UniqidIdx 的唯一索引。

单列索引

  • 在book表的comment字段上建立单列索引
    SQL语句如下:
CREATE INDEX BkcmtIdx ON book(comment(50) );

语句执行完毕之后,将在book表的comment字段上建立一个名为BkcmtIdx的单列索引,长度为50。

组合索引

  • 在book表的authors和info字段上建立组合索引,SQL语句如下:
CREATE INDEX BkAuAndInfoIdx ON book ( authors(20),info(50) );

语句执行完毕之后,将在book表的authors和info字段上建立了一个名为BkAuAndInfoIdx的组合索引,authors的索引序号为1,长度为20,info的索引序号为2,长度为50。

全文索引

删除表t6,重新建立表t6,在t6表中使用CREATE INDEX语句,在CHAR类型的info字段上创建全文索引
,SQL语句如下:

  • 首先删除表t6,并重新建立该表,分别输入下面语句:
drop table t6;
Query OK, 0 rows affected (0.00 sec)
  • 重新建立表t6
CREATE TABLE t6(id    INT NOT NULL,info  CHAR(255)) ENGINE=MyISAM;
Query OK, 0 rows affected (0.00 sec)
  • 使用CREATE INDEX在t6表的info字段上创建名称为infoFTIdx的全文索引:
CREATE FULLTEXT INDEX ON t6(info);

语句执行完毕之后,将在t6表中创建名称为infoFTIdx的索引,该索引在info字段上创建,类型为FULLTEXT,允许空值。

空间索引

删除表t7,重新创建表t7,在t7表中使用CREATE INDEX语句,在空间数据类型字段g上创建名称为spatIdx的空间索引,SQL语句如下:

  • 首先删除表t7,并重新建立该表,分别输入下面语句:
 drop table t7;
Query OK, 0 rows affected (0.00 sec)
  • 重新建立表t6
 CREATE TABLE t7 ( g GEOMETRY NOT NULL )ENGINE=MyISAM;
Query OK, 0 rows affected (0.00 sec)
  • 使用CREATE INDEX语句在表t7的g字段建立空间索引,
CREATE SPATIAL INDEX spatIdx ON t7 (g);
Query OK, 0 rows affected, 1 warning (0.05 sec)
Records: 0  Duplicates: 0  Warnings: 1

语句执行完毕之后,将在t7表中创建名称为spatIdx的空间索引,该索引在g字段上创建。

删除索引

MySQL中删除索引使用ALTER TABLE或者DROP INDEX语句,两者可实现相同的功能,DROP INDEX语句在内部被映射到一个ALTER TABLE语句中。

使用ALTER TABLE删除索引

  • ALTER TABLE删除索引的基本语法格式如下:
ALTER TABLE table_name DROP INDEX index_name;

删除book表中的名称为UniqidIdx的唯一索引

  • 首先查看book表中是否有名称为UniqidIdx的索引,输入SHOW语句如下:
 SHOW CREATE table book \G
*************************** 1. row ***************************Table: book
CREATE Table: CREATE TABLE `book` (`bookid` int(11) NOT NULL,`bookname` varchar(255) NOT NULL,`authors` varchar(255) NOT NULL,`info` varchar(255) DEFAULT NULL,`year_publication` year(4) NOT NULL,UNIQUE KEY `UniqidIdx` (`bookid`),KEY `BkNameIdx` (`bookname`),KEY `BkAuAndInfoIdx` (`authors`(20),`info`(50))
) ENGINE=InnoDB DEFAULT CHARSET=utf8
  • 查询结果可以看到,book表中有名称为UniqidIdx的唯一索引,该索引在bookid字段上创建,下面删除该索引,输入删除语句如下:
 ALTER TABLE book DROP INDEX UniqidIdx;
Query OK, 0 rows affected (0.08 sec)
Records: 0  Duplicates: 0  Warnings: 0
  • 语句执行完毕,使用SHOW语句查看索引是否被删除:
 SHOW CREATE table book \G
*************************** 1. row ***************************Table: book
CREATE Table: CREATE TABLE `book` (`bookid` int(11) NOT NULL,`bookname` varchar(255) NOT NULL,`authors` varchar(255) NOT NULL,`info` varchar(255) DEFAULT NULL,`year_publication` year(4) NOT NULL,KEY `BkNameIdx` (`bookname`),KEY `BkAuAndInfoIdx` (`authors`(20),`info`(50))
) ENGINE=InnoDB DEFAULT CHARSET=utf8

由结果可以看到,book表中已经没有名称为uniqidIdx的唯一索引,删除索引成功。
⚠️注意:添加AUTO_INCREMENT约束字段的唯一索引不能被删除。

使用DROP INDEX语句删除索引

  • DROP INDEX删除索引基本语法格式如下:
DROP INDEX index_name ON table_name;

删除book表中名称为BkAuAndInfoIdx的组合索引

删除表中的列时,如果要删除的列为索引的组成部分,则该列也会从索引中删除。如果组成索引的所有列都被删除,则整个索引将被删除。

 DROP INDEX BkAuAndInfoIdx ON book;
Query OK, 0 rows affected (0.02 sec)
Records: 0  Duplicates: 0  Warnings: 0
  • 语句执行完毕,使用SHOW语句查看索引是否被删除:

查询结果如下,book表中已经没有名称为BkAuAndInfoIdx的组合索引,删除索引成功。

 SHOW CREATE table book \G
*************************** 1. row ***************************Table: book
CREATE Table: CREATE TABLE `book` (`bookid` int(11) NOT NULL,`bookname` varchar(255) NOT NULL,`authors` varchar(255) NOT NULL,`info` varchar(255) DEFAULT NULL,`year_publication` year(4) NOT NULL,KEY `BkNameIdx` (`bookname`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
1 row in set (0.00 sec)

本节有关mysql数据表的索引练习题目已经讲述完,明天再见啦!!
😆 欢迎查看主页 【练小杰的CSDN】
ℹ️欢迎各位在评论区踊跃讨论,积极提出问题,解决困惑!!!
⚠️若博客里的内容有问题,欢迎指正,我会及时修改!!

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

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

相关文章

通过 route 或 ip route 管理Linux主机路由

目录 一:route 使用说明1、查看路由信息2、删除指定路由3、增加指定路由 二:ip route 使用说明1、查看主机路由2、新增主机路由3、删除主机路由 通过route 或者ip route修改Linux主机路由后属于临时生效,系统重启后就恢复默认值了&#xff0c…

SASS 简化代码开发的基本方法

概要 本文以一个按钮开发的实例,介绍如何使用SASS来简化CSS代码开发的。 代码和实现 我们希望通过CSS开发下面的代码样式,从样式来看,每个按钮的基本样式相同,就是颜色不同。 如果按照传统的方式开发,需要开发btn &…

flutter 专题三十六 Flutter动态化框架Thresh

一、前言 移动端技术栈自诞生以来,其双端开发成本和发布效率一直广受诟病。为了解决这些问题,前端跨端技术一直在不断尝试,希望能一次开发、多端运行并且能做到快速发布。期间经历了多个技术发展阶段。 第一阶段:以H5为代表&…

python制作翻译软件

本文复刻此教程:制作属于自己的翻译软件-很简单【Python】_哔哩哔哩_bilibili 一、明确需求(以搜狗翻译为例) (1)网址:https://fanyi.sogou.com/text (2) 数据:翻译内容…

【C++】20.二叉搜索树

文章目录 1. 二叉搜索树的概念2. 二叉搜索树的性能分析3. 二叉搜索树的插入4. 二叉搜索树的查找5. 二叉搜索树的删除6. 二叉搜索树的实现代码7. 二叉搜索树key和key/value使用场景7.1 key搜索场景:7.2 key/value搜索场景:7.3 主要区别:7.4 ke…

Opencv图片的旋转和图片的模板匹配

图片的旋转和图片的模板匹配 目录 图片的旋转和图片的模板匹配1 图片的旋转1.1 numpy旋转1.1.1 函数1.1.2 测试 1.2 opencv旋转1.2.1 函数1.2.2 测试 2 图片的模板匹配2.1 函数2.2 实际测试 1 图片的旋转 1.1 numpy旋转 1.1.1 函数 np.rot90(kl,k1),k1逆时针旋转9…

重温设计模式--13、策略模式

策略模式介绍 文章目录 策略模式介绍C 代码示例 策略模式是一种行为设计模式,它允许在运行时选择算法的行为。该模式将算法的定义和使用分离开来,使得算法可以独立于使用它的客户端而变化,提高了代码的灵活性和可维护性。 其主要包含以下几个…

【GOOD】A Survey of Deep Graph Learning under Distribution Shifts

深度图学习在分布偏移下的综述:从图的分布外泛化到自适应 Northwestern University, USA Repository Abstract 图上的分布变化——训练和使用图机器学习模型之间的数据分布差异——在现实世界中普遍存在,并且通常不可避免。这些变化可能会严重恶化模…

【Axure高保真原型】环形进度条(开始暂停效果)

今天和大家分享环形进度条(开始暂停效果)的原型模版,效果包括: 点击开始按钮,可以环形进度条开始读取,中部百分比显示环形的读取进度; 在读取过程中,点击暂停按钮,可以随…

Euler 21.10(华为欧拉)安装oracle19c-RAC

1. Euler 21.10安装oracle19c-RAC 1.1. 环境规划 1.1.1. 主机规划 hostname IP 实例名 hfdb90 192.168.40.90 hfdb1 hfdb91 192.168.40.90 hfdb2 系统版本 BigCloud Enterprise Linux For Euler 21.10 (GNU/Linux 4.19.90-2107.6.0.0100.oe1.bclinux.x86_64 x86_6…

【python】matplotlib(radar chart)

文章目录 1、功能描述和原理介绍2、代码实现3、效果展示4、完整代码5、多个雷达图绘制在一张图上6、参考 1、功能描述和原理介绍 基于 matplotlib 实现雷达图的绘制 一、雷达图的基本概念 雷达图(Radar Chart),也被称为蛛网图或星型图&…

Business Cooperation Process

Business Cooperation Process 商务合作基本流程 并不是每个人都能做到言而有信的,因此还是需要流程来约束的。

模式识别-Ch2-分类错误率

分类错误率 最小错误率贝叶斯决策 样本 x x x的错误率: 任一决策都可能会有错误。 P ( error ∣ x ) { P ( w 2 ∣ x ) , if we decide x as w 1 P ( w 1 ∣ x ) , if we decide x as w 2 P(\text{error}|\mathbf{x})\begin{cases} P(w_2|\mathbf{x}), &…

Milvus×全诊通:从导诊到智能超声,如何将人效比翻倍

AI与智慧医疗的结合已是未来发展的必然趋势。近年来,国家卫健委推崇智慧医疗和AI技术,如智能导诊、预问诊、辅助诊断等,以提高医疗服务效率和诊断准确性,改善患者就医体验。 全诊通是一家专注于医疗SaaS和人工智能的公司&#xff…

自动驾驶相关知识学习笔记

一、概要 因为想知道SIL、HIL是什么仿真工具,故而浏览了自动驾驶相关的知识。 资料来源《自动驾驶——人工智能理论与实践》胡波 林青 陈强 著;出版时间:2023年3月 二、图像的分类、分割与检测任务区别 如图所示,这些更高阶的…

springcloud 介绍

Spring Cloud是一个基于Spring Boot的微服务架构解决方案集合,它提供了一套完整的工具集,用于快速构建分布式系统。在Spring Cloud的架构中,服务被拆分为一系列小型、自治的微服务,每个服务运行在其独立的进程中,并通过…

【PLL】非线性瞬态性能

频率捕获、跟踪响应,是大信号非线性行为锁相范围内的相位、频率跟踪,不是非线性行为 所以:跟踪,是线性区域;捕获,是大信号、非线性区域 锁定范围:没有周跳(cycle-slipping&#xff0…

QML学习(七) 学习QML时,用好Qt设计器,快速了解各个组件的属性

在初步学习QML时,特别建议看看Qt设计器,先利用Qt Quick设计师的使用,快速的对Qt Quick的各个组件及其常用的属性,有个初步的了解和认识。如果初始学习一上来直接以代码形式开干,很容易一头雾水。而设计器以最直白的所见…

find 查找文件grep匹配数据

一、find介绍 1. find . -iname "*.txt"查找当前目录下各个文件夹下的txt属性的文件(i忽略大小写)。 2.find . -type f 查找当前目录下各个文件夹下的文件 3.find . -type d 查找当前目录下各个文件夹下的目录 4.find . -type f | xargs grep -ain -E "匹配…

Mac上鸿蒙配置HDC报错:zsh: command not found: hdc -v

这个问题困扰了好久,按照官方文档去配置的,就是会一直报错,没有配置成功,主要原因是官网ide的路径可能和你本地的ide的路径不一致,因为官网的ide版本可能是最新的 一.先查找你本地的toolchains目录在哪里,…