希望我能为每个数据库服务器获得答案。

有关索引工作方式的概述,请查看: 数据库索引如何工作?

===============>>#1 票数:67 已采纳

以下是SQL92标准,因此大多数使用SQL的RDMBS应该支持:

CREATE INDEX [index name] ON [table name] ( [column name] )

===============>>#2 票数:6

Sql Server 2005使您能够指定覆盖索引。 这是一个包含叶级别其他列的数据的索引,因此您不必返回到表中以获取未包含在索引键中的列。

create nonclustered index my_idx on my_table (my_col1 asc, my_col2 asc) include (my_col3);

这是无价的已查询my_col3在选择列表中,并my_col1my_col2的where子句。

===============>>#3 票数:4

在SQL Server中,您可以执行以下操作:( MSDN链接到完整的选项列表。)

CREATE [ UNIQUE ] [ CLUSTERED | NONCLUSTERED ] INDEX index_name 
    ON <object> ( column [ ASC | DESC ] [ ,...n ] ) 
    [ INCLUDE ( column_name [ ,...n ] ) ]
    [ WHERE <filter_predicate> ]

(忽略一些更高级的选项...)

每个索引的名称必须是唯一的数据库范围。

所有索引都可以有多个列,每个列都可以按您想要的顺序排序。

聚簇索引是唯一的 - 每个表一个。 他们不能拥有INCLUDE d列。

非聚簇索引不是唯一的,每个表最多可以有999个。 它们可以包含列和where子句。

===============>>#4 票数:4

对于python pytables,索引没有名称,它们绑定到单个列:

tables.columns.column_name.createIndex()

===============>>#5 票数:2

要创建索引,可以使用以下内容:

  1. 在表上创建索引。 允许重复的值: CREATE INDEX index_name ON table_name (column_name)

  2. 在表上创建唯一索引。 不允许重复值: CREATE UNIQUE INDEX index_name ON table_name (column_name)

  3. 聚集索引: CREATE CLUSTERED INDEX CL_ID ON SALES(ID);集群索引CREATE CLUSTERED INDEX CL_ID ON SALES(ID);

  4. 非聚集索引:
    CREATE NONCLUSTERED INDEX NONCI_PC ON SALES(ProductCode);

有关详细信息,请参阅: http//www.codeproject.com/Articles/190263/Indexes-in-MS-SQL-Server

===============>>#6 票数:1

  1. CREATE INDEX name_index ON Employee (Employee_Name)

  2. 在多列上: CREATE INDEX name_index ON Employee (Employee_Name, Employee_Age)

===============>>#7 票数:0

由于大多数答案都是针对SQL数据库的,因此我为NOSQL数据库编写了这个,特别是针对MongoDB。

下面是使用mongo shell在MongoDB中创建索引的语法。

db.collection.createIndex( <key and index type specification>, <options> )

示例 - db.collection.createIndex( { name: -1 } )

在上面的示例中,在名称字段上创建了单个降序索引。

请记住,MongoDB索引使用B树数据结构。

我们可以在mongodb中创建多种类型的索引,有关更多信息,请参阅以下链接 - https://docs.mongodb.com/manual/indexes/

===============>>#8 票数:0

并非所有数据库都需要索引。 例如:Kognitio aka WX2引擎不提供索引语法,因为数据库引擎隐式地处理它。 数据通过循环分区继续进行,Kognitio WX2以最简单的方式获取磁盘上和磁盘外的数据。

===============>>#9 票数:0

我们可以使用以下语法来创建索引。

CREATE INDEX <index_name> ON <table_name>(<column_name>)

如果我们不希望允许重复值,那么我们可以在创建索引时添加UNIQUE ,如下所示

CREATE UNIQUE INDEX <index_name> ON <table_name>(<column_name>)

我们可以通过给多个列名称分隔' '来创建多列的索引

  ask by Xenph Yan translate from so

未解决问题?本站智能推荐: