Flash cards
Review the key moves
What is the main idea behind SQL CREATE INDEX Statement?
Lesson checks
Practice each idea before moving on
Short Mimo-style checks built from this lesson's code, terms, and sequence.
Which statement best captures the main point of this lesson?
Complete the missing token from the example code.
___ INDEXPut the learning moves in the order that makes the concept easiest to apply.
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
;