Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Database indexing techniques


Published on

Database indexing techniques ... search data from database using different data structures like trees , hashing and also learn indexing quries

Published in: Education
  • Be the first to comment

Database indexing techniques

  1. 1. • A database index is a data structure that improves the speed of data retrieval operations on a database table at the cost of additional writes and storage space to maintain the index data structure. • Example :
  2. 2. • Now, let’s say that we want to run a query to find all the details of any employees who are named ‘Jesus’? So, we decide to run a simple query like this: • Example : • SELECT * FROM Employee WHERE Employee_Name = 'Jesus‘
  3. 3. • Well, the database software would literally have to look at every single row in the Customers table to see if the customerName for that row is ‘Jesus’
  4. 4. • The whole point of having an index is to speed up search queries by essentially cutting down the number of records/rows in a table that need to be examined.
  5. 5. • B- trees are the most commonly used data structures for indexes. • Time efficient • Deletions, and insertions can all be done in logarithmic time • No need to sort data just use algorithm to get sorted data like inorder,postorder etc • No need to search whole table
  6. 6. • Queries that compare for equality to a string can retrieve values very fast if they use a hash index. • Example : SELECT * FROM Employee WHERE Employee_Name = ‘Jesus’ • Hash tables are not sorted data structures. • Suppose you want to find out all of the employees who are less than 40 years old. How could you do that with a hash table index? Well, it’s not possible because a hash table is only good for looking up key value pairs.
  7. 7. • A database index does not store the values in the other columns of the same table. • Example: Age and Employee_Address column values are not also stored in the index. • An index stores a pointer to the table row.
  8. 8. • Syntax: CREATE INDEX name_indexON Employee (Employee_Name) • How to create a multi-column index in SQL • Syntax: CREATE INDEX name_indexON Employee (Employee_Name, Employee_Age) • ALTER TABLE tbl_name ADD PRIMARY KEY (column_list): This statement adds a PRIMARY KEY, which means that indexed values must be unique and cannot be NULL
  9. 9. • It takes up space – and the larger your table, the larger your index. • Whenever you add, delete, or update rows in the corresponding table, the same operations will have to be done to your index. • Drop unused indexes Syntax: Alter table admin drop index searchAge
  10. 10. • SHOW INDEX FROM table_name • ALTER TABLE testalter_tbl ADD PRIMARY KEY (i); • ALTER TABLE testalter_tbl DROP PRIMARY KEY; • CREATE TABLE lookup ( id INT NOT NULL, name CHAR(20), PRIMARY KEY USING BTREE (id) )
  11. 11. Cont • CREATE TABLE lookup ( id INT NOT NULL, name CHAR(20), PRIMARY KEY USING HASH (id) )