Talk About Network

Google


Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Data Bases > Databases General > Re: One example...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 4 of 9 Topic 3196 of 3270
Post > Topic >>

Re: One example of a slow query.

by "Arved Sandstrom" <asandstrom@[EMAIL PROTECTED] > Jun 25, 2008 at 11:55 AM

"Roy Hann" <specially@[EMAIL PROTECTED]
> wrote in message 
news:O5-dnXaHnYG1h__VnZ2dnUVZ8hednZ2d@[EMAIL PROTECTED]
> "David Segall" <david@[EMAIL PROTECTED]
> wrote in message 
> news:nu2464djgj6vku4tci9if3ics221qidcp5@[EMAIL PROTECTED]
>> "David Cressey" <cressey73@[EMAIL PROTECTED]
> wrote:
>>
>>> Because
>>>there was an index with a compound index key,  namely country, state,
and
>>>city.
>> Why would you do that instead of indexing the fields separately?
>
> Most DBMS engines will use only one index for a particular restriction 
> step, so in general you will want to define compound keys where they
make 
> sense.
>
> Depending on the implementation of the index it might be possible to 
> exploit right-incomplete key values, so you would try to define your key

> with the most frequently known parts of the key are on the left.  Then 
> although the key may include more columns than you can supply a value
for, 
> you might still be able to exploit it if you supply the parts you do
know.
>
> Roy

How common is the latter implementation? MySQL evidently does this, so
that 
if you had an index on (col1,col2,col3), queries on (col1), (col1,col2)
and 
(col1,col2,col3) all use the index, but a query on (col2,col3), for
example, 
does not. What is this incomplete use of multicolumn indexes called, 
exactly? I ran across articles that referred to this as partial indexing, 
but my understanding of a partial (filtered) index is that the latter 
indexes on a subset of rows, which is something different. I'm guessing
that 
for any given DBMS you'd just have to look up the docs on multicolumn 
indexing and see what they say about using leading columns.

As I understand it, it wouldn't be totally useless to have only the
separate 
indexes for the three columns, namely (col1), (col2), and (col3), as the 
DBMS might use index combination (as does PostgreSQL 8.1 and up). Or
perhaps 
even better, have the multicolumn index and one or more single-column 
indexes, depending on what you anticipate the most common queries to be.

AHS
 




 9 Posts in Topic:
One example of a slow query.
"David Cressey"  2008-06-24 18:18:08 
Re: One example of a slow query.
David Segall <david@[E  2008-06-25 09:13:38 
Re: One example of a slow query.
"Roy Hann" <  2008-06-25 11:12:55 
Re: One example of a slow query.
"Arved Sandstrom&quo  2008-06-25 11:55:34 
Re: One example of a slow query.
Thomas Kellerer <YQDHX  2008-06-25 14:16:23 
Re: One example of a slow query.
"David Cressey"  2008-06-25 14:13:42 
Re: One example of a slow query.
"David Cressey"  2008-06-25 14:10:37 
Re: One example of a slow query.
Ed Prochak <edprochak@  2008-06-25 05:09:24 
Re: One example of a slow query.
Ed Prochak <edprochak@  2008-06-25 05:16:06 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Mon Oct 13 21:36:34 CDT 2008.