Newbie database index question

Posted by RenderIn on Stack Overflow See other posts from Stack Overflow or by RenderIn
Published on 2010-03-25T15:03:15Z Indexed on 2010/03/25 15:13 UTC
Read the original article Hit count: 408

Filed under:
|
|
|

I have a table with multiple indexes, several of which duplicate the same columns:

Index 1 columns: X, B, C, D
Index 2 columns: Y, B, C, D
Index 3 columns: Z, B, C, D

I'm not very knowledgeable on indexing in practice, so I'm wondering if somebody can explain why X, Y and Z were paired with these same columns. B is an effective date. C is a semi-unique key ID for this table for a specific effective date B. D is a sequence that identifies the priority of this record for the identifier C.

Why not just create 6 indexes, one for each X, Y, Z, B, C, D?

I want to add an index to another column T, but in some contexts I'll only be querying on T alone while in others I will also be specifying the B, C and D columns... so should I create just one index like above or should I create one for T and one for (T, B, C, D)?

I've not had as much luck as expected when googling for comprehensive coverage of indexing. Any resources where I can get a through explanation and lots of examples of B-tree indexing?

© Stack Overflow or respective owner

Related posts about Oracle

Related posts about indexing