Re: Access and Filter Predicate on same execution plan line

From: Lothar Flatz <l.flatz_at_bluewin.ch>
Date: Wed, 18 Aug 2021 08:29:44 +0200
Message-ID: <60da2f0c-0b78-5eef-4787-8c2c98a3dc35_at_bluewin.ch>


Mladen, this is no basic rule but rather some kind of myth. I like to know who has proven it, where and when.
https://richardfoote.wordpress.com/2018/06/04/index-column-order-impact-on-index-branch-blocks-part-i-day-in-day-out/

Regards

Lothar

Am 18.08.2021 um 03:43 schrieb Mladen Gogala:
> Mark, one of the basic rules of the database design is to put the most
> selective column first in a multi-column index. Putting a column with
> very few values as the first column of a multi-column index goes
> against the time tested design rules and is guaranteed to cause
> problems. I have always treated skip scan as a performance problem.
>
> As for the 42 billions, I do agree that the answer to the question of
> the indexes, databases and everything is 42. I believe that's in one
> of the Jonathan's books, along with the SEP field of the tablespace
> headers. BTW, I wonder what will be the Oracle version at the end of
> the universe?
>
> Regards
>
> On 8/17/21 8:51 PM, Mark W. Farnham wrote:
>> If your first column is just two values, say,  either Y or N, then a
>> skip scan filtering on the second in each of Y and N will be the good
>> polar case of skip scan. (Well, actually all values equal would be
>> even better, but that would also be a silly column to have and index).
>>
>> If you have 42 billion different values for the first column only a
>> few of which have the desired value in the second column, that will
>> be toward the polar bad case.
>

--
http://www.freelists.org/webpage/oracle-l
Received on Wed Aug 18 2021 - 08:29:44 CEST

Original text of this message