Huh???

On Saturday, June 20, 2009, Peter Brawley <peter.braw...@earthlink.net> wrote:
> Mike
>
>>J holding the next integer that T has for S
>
> You mean for each i, the next value of i with that s?
>
>>(U having no row for the last integer of each string).
>
> I do not understand that at all.
>
> PB
>
>
> Mike Spreitzer wrote:
>
> Suppose I have a table T with two column, S holding strings (say, 
> VARCHAR(200)) and I holding integers.  No row appears twice.  A given string 
> appears many times, on average about 100 times.  Suppose I have millions of 
> rows.  I want to make a table U holding those same columns plus one more, J 
> holding the next integer that T has for S (U having no row for the last 
> integer of each string).  I could index T on (S,I) and write this query as
>
> select t1.*, t2.I as J from T as t1, T as t2
> where t1.S=t2.S and t1.I < t2.I
> and not exists (select * from T as t12 where t12.S=t1.S and t1.I < t12.I and 
> t12.I < t2.I)
>
> but the query planner says this is quite expensive to run: it will enumerate 
> all of T as t1, do a nested enumeration of all t2's entries for S=t1.S, and 
> inside that do a further nested enumeration of t12's entries for S=t1.S --- 
> costing about 10,000 times the size of T.  There has to be a better way!
>
> Thanks,
> Mike Spreitzer
>
>   ------------------------------------------------------------------------
>
>
> No virus found in this incoming message.
> Checked by AVG - www.avg.com <http://www.avg.com> Version: 8.5.364 / Virus 
> Database: 270.12.80/2187 - Release Date: 06/19/09 06:53:00
>
>
>
>

-- 
-----------------------------
Johnny Withers
601.209.4985
joh...@pixelated.net

--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/mysql?unsub=arch...@jab.org

Reply via email to