Re: qsort again (was Re: [PERFORM] Strange Create Index

Поиск
Список
Период
Сортировка
Искать
От
Mark Lewis
Тема
Re: qsort again (was Re: [PERFORM] Strange Create Index
Дата
Msg-id
1140197437.9076.268.camel@archimedes
Ответ на
Список
Дерево обсуждения
Re: qsort again (was Re: [PERFORM] Strange Create Index behaviour) "Qingqing Zhou" <zhouqq@cs.toronto.edu>
On Thu, 2006-02-16 at 21:33 -0800, David Lang wrote:
> > In SQL_ASCII, just take the first 4 characters (or 8, if using a 64-bit
> > sortKey as elsewhere suggested).  The sorting key doesn't need to be a
> > one-to-one mapping.
> 
> that would violate your second contraint ( f(a)==f(b) iff (a==b) )
> 
> if you could drop that constraint (the cost of which would be extra 'real' 
> compares within a bucket) then a helper function per datatype could work 
> as you are talking.

I think we're actually on the same page here; you're right that the
constraint above ( f(a)==f(b) iff a==b ) can't be extended to data types
with more than 32 bits of value space.  But the constraint I listed was
actually:

if a==b then f(a)==f(b)

Which doesn't imply 'if and only if'.  It's a similar constraint to
hashcodes; the same value will always have the same hash, but you're not
guaranteed that the hashcodes for two distinct values will be unique.

-- Mark
В списке pgsql-hackers по дате отправления
От: Michael Paesold
Дата:
От: Ragnar
Дата:
FAQ