SQL 显示索引
SQL显示索引语句
SHOW INDEX 是检索在表上定义的索引信息的基本SQL语句。然而,SHOW INDEX语句只适用于MySQL RDBMS,而不是SQL Server的有效语句。
要在SQL Server中列出在表上创建的索引,需要使用系统存储过程 sp_helpindex 。
从在MySQL表上查询SHOW INDEX语句中获取的结果集包含索引信息。
语法
以下是MySQL中 SHOW INDEX 语句的语法 –
示例
以下示例演示了在MySQL中使用SHOW INDEX语句的工作原理。首先,使用以下CREATE查询在MySQL数据库中创建一个名为CUSTOMERS的表−
现在让我们使用以下查询将一些值插入到上面创建的表中:
一旦数据被插入,使用以下查询在CUSTOMERS表中为列 NAME 创建索引:
现在,您可以使用以下查询列出在CUSTOMERS表上定义的所有索引 –
输出
在执行以上查询时,输出结果如下所示:
Table | Non_unique | Key_name | Seq_in_index | Column_name |
---|---|---|---|---|
customers | 0 | PRIMARY | 1 | ID |
customers | 1 | index_name | 1 | NAME |
显示SQL Server中的索引
在SQL Server中,系统存储过程 sp_helpindex 用于检索已在表上定义的索引的信息。它将结果作为包含每个索引的详细信息(包括名称、类型和列)的表返回。
语法
以下是在SQL Server中列出在表上定义的索引的基本语法−
在这里, [ @objname = ] ‘name’ 指定了正在检索索引信息的表的名称。索引信息包括:-
- index_name 是包含在索引中的列的名称。
- index_description 是索引的简要说明,例如索引的类型(如聚集或非聚集)。
- index_keys 是包含在索引中的键。
示例
现在,让我们使用系统存储过程“sp_helpindex”列出在CUSTOMERS表上创建的所有索引,如下所示:
输出
在执行上述查询后,输出如下所示 –
索引名称 | 索引描述 | 索引键 |
---|---|---|
INDEX_NAME | 非聚集索引位于 PRIMARY 上 | NAME |
PK__CUSTOMER__ 3214EC27755869D9 | 聚集、唯一的主键索引位于 PRIMARY 上 | ID |