HyperSQL教程

HSQLDB 索引

数据库索引是一种提高表中操作速度的数据结构。可以使用一列或多列创建索引,从而为快速随机查找和对记录的访问进行高效排序奠定基础。
在创建索引时,应该考虑哪些列将用于进行 SQL 查询,并在这些列上创建一个或多个索引。
实际上,索引也是表的类型,它保留主键或索引字段以及指向实际表中每条记录的指针。
用户看不到索引。它们仅用于加快查询速度,数据库搜索引擎将使用它们来快速定位记录。
INSERT 和 UPDATE 语句在有索引的表上花费更多时间,而 SELECT 语句在这些表上运行得更快。原因是在插入或更新时,数据库也需要插入或更新索引值。

简单且唯一的索引

您可以在表上创建唯一索引。 唯一索引 意味着两行不能具有相同的索引值。以下是在表上创建索引的语法。
CREATE UNIQUE INDEX index_name
ON table_name (column1, column2,...);
您可以使用一列或多列来创建索引。例如,使用tutorial_author 在tutorials_tbl 上创建索引。
CREATE UNIQUE INDEX AUTHOR_INDEX
ON tutorials_tbl (tutorial_author)
您可以在表上创建一个简单的索引。只需从查询中省略 UNIQUE 关键字即可创建一个简单的索引。 简单索引允许表中出现重复值。
如果要按降序索引列中的值,可以在列名后添加保留字 DESC。
CREATE UNIQUE INDEX AUTHOR_INDEX
ON tutorials_tbl (tutorial_author DESC)

添加和删除索引的 ALTER 命令

向表中添加索引有四种类型的语句-
ALTER TABLE tbl_name ADD PRIMARY KEY (column_list)-该语句添加了一个 PRIMARY KEY,这意味着索引值必须唯一且不能为 NULL。 ALTER TABLE tbl_name ADD UNIQUE index_name (column_list)-此语句创建一个索引,其值必须是唯一的(NULL 值除外,它可能出现多次)。 ALTER TABLE tbl_name ADD INDEX index_name (column_list)-这会添加一个普通索引,其中任何值都可能出现多次。 ALTER TABLE tbl_name ADD FULLTEXT index_name (column_list)-这会创建一个特殊的 FULLTEXT 索引,用于文本搜索。
以下是在现有表中添加索引的查询。
ALTER TABLE testalter_tbl ADD INDEX (c);
您可以使用 DROP 子句和 ALTER 命令删除任何 INDEX。以下是删除上面创建的索引的查询。
ALTER TABLE testalter_tbl DROP INDEX (c);

显示索引信息

您可以使用 SHOW INDEX 命令列出与表关联的所有索引。垂直格式输出(由 \G 指定)通常与此语句一起使用,以避免长行回绕。
以下是显示有关表的索引信息的通用语法。
SHOW INDEX FROM table_name\G
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4