Jak index sloupec databáze

hlasů
48

Doufejme, že mohu získat odpovědi pro každý databázový server.

Pro nástin toho, jak indexovací práce check-out: Jak databáze indexování práci?

Položena 04/08/2008 v 12:21
zdroj uživatelem
V jiných jazycích...                            


9 odpovědí

hlasů
54

Následující je SQL92 standardní, takže by měla být podpořena většinou RDBMS, které používají SQL:

CREATE INDEX [index name] ON [table name] ( [column name] )
Odpovězeno 04/08/2008 v 12:25
zdroj uživatelem

hlasů
6

SQL Server 2005 vám dává možnost určit index krycí. Jedná se o index, který zahrnuje údaje z dalších sloupcích na úrovni listů, takže nemusíte jít zpět ke stolu, aby si sloupce, které nejsou zahrnuty v klíčích indexu.

vytvořit neclusterovaný index my_idx na my_table (my_col1 ASC, my_col2 asc) zahrnují (my_col3);

To je neocenitelná pro dotaz, který má my_col3 v seznamu vyberte a my_col1 a my_col2 v klauzuli WHERE.

Odpovězeno 13/08/2008 v 15:05
zdroj uživatelem

hlasů
4

V SQL Server, můžete provést následující kroky: ( MSDN Odkaz na kompletní seznam možností.)

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

(Ignorovat některé pokročilejší možnosti ...)

Název každého indexu musí být jedinečná databáze široký.

Všechny indexy může mít více sloupců, a každý sloupec je možné objednat v jakémkoliv pořadí chcete.

Clusterů indexy jsou jedinečné - jednu na stůl. Nemohou mít INCLUDEd sloupců.

Nonclustered indexy nejsou jedinečné, a může mít až 999 podle tabulky. Mohou mít zahrnuty sloupce a kde doložek.

Odpovězeno 15/06/2012 v 19:01
zdroj uživatelem

hlasů
4

Pro Python pytables, indexy nemají jména a jsou vázány na jednotlivé sloupce:

tables.columns.column_name.createIndex()
Odpovězeno 23/01/2012 v 16:13
zdroj uživatelem

hlasů
2

Ty by měly pouze index sloupce, na kterém budete provádět časté vyhledávání / dotazy.

Předpokládejme, že máte tabulku s názvem studenti, kam ukládat StudentID, jméno, hřiště, druh apod A je nutné často vyhledávat sloupec StudentID informace o konkrétních studentů.

SELECT Name, Course, Grade

FROM Students

WHERE StudentID = 111025

Měli byste vytvořit index v tomto sloupci, protože to urychlí vyhledávací proces. Můžete vytvořit index existujícího sloupce s následujícím kódem:

CREATE INDEX IndexStudentID

ON Students (StudentID)

Název IndexStudentID může být cokoliv, vybrat něco, co smysl pro vás.

Nicméně, vytvoření indexu přidám nějakou režii do databáze. Existuje mnoho nástrojů, které mohou pomoci, například, já používám SQLDbm jak jsem to mi vyhovuje nejlépe.

Odpovězeno 29/08/2017 v 09:53
zdroj uživatelem

hlasů
2

Chcete-li vytvořit mohou být použity indexy následující věci:

  1. Vytvoří index v tabulce. Duplicitní hodnoty jsou povoleny:

    CREATE INDEX index_name ON table_name (column_name)

  2. Vytvoří jedinečný index v tabulce. Duplicitní hodnoty nejsou povoleny:

    CREATE jedinečný index index_name ON table_name (column_name)

  3. clusterů Index

    CREATE seskupený index CL_ID na prodeje (ID);

  4. Index bez clusterů

    CREATE neclusterovaný index NONCI_PC na prodeje (kód_produktu);

viz http://www.codeproject.com/Articles/190263/Indexes-in-MS-SQL-Server podrobnosti.

Odpovězeno 02/06/2015 v 13:38
zdroj uživatelem

hlasů
1

1.

 CREATE INDEX name_index ON Employee (Employee_Name)
  1. Na více sloupci

    CREATE INDEX name_index ON Employee (Employee_Name, Employee_Age)
    
Odpovězeno 17/01/2017 v 10:48
zdroj uživatelem

hlasů
0

Index není vždy potřeba pro všechny databáze. Pro např: Kognitio aka WX2 motor nenabízí syntaxi pro indexování jako databázový stroj se postará o to implicitně. Data se děje pomocí kruhové obměny rozdělování a Kognitio WX2 získává data zapínat a vypínat disk v nejjednodušším možným způsobem.

Odpovězeno 05/06/2018 v 10:24
zdroj uživatelem

hlasů
0

Vzhledem k tomu, většina z odpovědí jsou uvedeny pro SQL databází, píšu to pro databáze NoSQL, speciálně pro MongoDB.

Níže je syntax vytvořit index v MongoDB pomocí Mongo shell.

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

příklad - db.collection.createIndex( { name: -1 } )

Ve výše uvedeném příkladu je jediný klíč index sestupně vytvořen na poli jméno.

Mějte na paměti, MongoDB indexů využívá datovou strukturu B-stromu.

Existuje několik typů indexů můžeme vytvořit v MongoDB, pro více informací viz níže odkaz - https://docs.mongodb.com/manual/indexes/

Odpovězeno 01/06/2018 v 19:05
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more