bugl
bugl
HomeLearnPatternsPathsSearchPremium
HomeLearnPatternsPaths
Learn/SQL/SQL Database
SQL•SQL Database

SQL CREATE INDEX Statement

The CREATE INDEX statement is used to create indexes on tables in databases, to speed up data retrieval.

The users cannot see the indexes, they are just used to speed up searches/queries.

Note

Updating tables with indexes are more time-consuming than tables without indexes (because the indexes must also be updated). So, only create indexes on columns that are frequently searched against.

Types of Indexes: Non-unique and Unique

There are two types of indexes

  • CREATE INDEX - Creates a non-unique index (duplicate values are allowed)
  • CREATE UNIQUE INDEX - Creates a unique index (duplicate values are not allowed)

CREATE INDEX Syntax

CREATE INDEX
index_name
ON
table_name
 (
column1
,
column2
, ...);

CREATE UNIQUE INDEX Syntax

CREATE UNIQUE INDEX
index_name
ON
table_name
 (
column1
,
column2
, ...);

Note

The syntax for creating indexes varies among different databases. Check the syntax for creating indexes in your database!

CREATE INDEX Example

The following SQL creates a non-unique index named "idx_lastname" on the "LastName" column in the "Persons" table:

CREATE INDEX idx_lastname
ON Persons (LastName);

If you want to create an index on a combination of columns, you can list the column names within the parentheses, separated by commas:

CREATE INDEX idx_lname_fname
ON Persons (LastName, FirstName);

DROP INDEX Statement

The DROP INDEX statement is used to remove an index.

SQL Server

DROP INDEX
table_name
.
index_name
;

MySQL

ALTER TABLE
table_name
DROP INDEX
index_name
;

MS Access

DROP INDEX
index_name
 ON
table_name
;

DB2/Oracle

DROP INDEX
index_name
;

Previous

SQL DEFAULT Constraint

Next

SQL AUTO INCREMENT Field

This chapter

Overview
21

Lessons

50m

Read time

1. SQL CREATE DATABASE Statement2. SQL DROP DATABASE Statement3. SQL BACKUP DATABASE Statement4. SQL CREATE TABLE Statement5. SQL DROP TABLE Statement6. SQL ALTER TABLE Statement7. SQL Constraints8. SQL NOT NULL Constraint9. SQL UNIQUE Constraint10. SQL PRIMARY KEY Constraint11. SQL FOREIGN KEY Constraint12. SQL CHECK Constraint13. SQL DEFAULT Constraint14. SQL CREATE INDEX Statement15. SQL AUTO INCREMENT Field16. SQL Working With Dates17. SQL Views18. SQL Injection19. SQL Parameters20. SQL Prepared Statements21. SQL Hosting

On this page

Types of Indexes: Non-unique and UniqueCREATE INDEX SyntaxCREATE UNIQUE INDEX SyntaxCREATE INDEX ExampleDROP INDEX Statement