70 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			70 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | |
| title: SQL CREATE INDEX Statement
 | |
| ---
 | |
| 
 | |
| The CREATE INDEX statement is used to create indexes in tables.
 | |
| 
 | |
| Indexes are used to retrieve data from the database very fast. The users cannot see the indexes, they are just used to speed up searches/queries.
 | |
| 
 | |
| > **Note:** Updating a table with indexes takes more time than updating a table without (because the indexes also need an update). So, only create indexes on columns that will be frequently searched against.
 | |
| 
 | |
| #### CREATE INDEX Syntax
 | |
| 
 | |
| Creates an index on a table. Duplicate values are allowed:
 | |
| 
 | |
| ```sql
 | |
| CREATE INDEX index_name
 | |
| ON table_name (column1, column2, ...);
 | |
| ```
 | |
| 
 | |
| #### CREATE UNIQUE INDEX Syntax
 | |
| 
 | |
| Creates a unique index on a table. Duplicate values are not allowed:
 | |
| 
 | |
| ```sql
 | |
| CREATE UNIQUE INDEX index_name
 | |
| ON table_name (column1, column2, ...);
 | |
| ```
 | |
| 
 | |
| > **Note:** The syntax for creating indexes varies among different databases. Therefore: Check the syntax for creating indexes in your database.
 | |
| 
 | |
| #### CREATE INDEX Example
 | |
| 
 | |
| The SQL statement below creates an index named "idx_lastname" on the "LastName" column in the "Persons" table:
 | |
| 
 | |
| ```sql
 | |
| 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_pname
 | |
| 
 | |
| ```sql
 | |
| ON Persons (LastName, FirstName);
 | |
| ```
 | |
| 
 | |
| #### DROP INDEX Statement
 | |
| 
 | |
| The DROP INDEX statement is used to delete an index in a table.
 | |
| 
 | |
| **MS Access:**
 | |
| ```sql
 | |
| DROP INDEX index_name ON table_name;
 | |
| ```
 | |
| 
 | |
| **SQL Server:**
 | |
| ```sql
 | |
| DROP INDEX table_name.index_name;
 | |
| ```
 | |
| 
 | |
| **DB2/Oracle:**
 | |
| ```sql
 | |
| DROP INDEX index_name;
 | |
| ```
 | |
| **MySQL:**
 | |
| ```sql
 | |
| ALTER TABLE table_name
 | |
| DROP INDEX index_name; 
 | |
| ```
 |