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 > IBM DB2 > Re: Question ab...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 2 of 12 Topic 8829 of 9520
Post > Topic >>

Re: Question about MIN/MAX optimization

by Serge Rielau <srielau@[EMAIL PROTECTED] > Apr 25, 2008 at 11:15 AM

Michel Esber wrote:
> Hi all,
> 
> Db2 v8 FP15 LUW .
> 
> create table T (ID varchar (24), ABC timestamp)
> 
> There is an index for (ID, ABC), allowing reverse Scans.
> 
> My application needs to determine MIN and MAX(ABC) for a given ID. We
> are currently using a simple statement:
> 
> select MIN(abc), MAX(abc) from T where ID = ? for read only
> 
> Table T has 100+ million rows, and several other applications are
> reading/deleting data from it. The statement above runs with UR
> isolation, however it takes a very long time to complete (5-10
> minutes, or more).
> 
> I have studied the access plan, and it looks OK:
> 
> Access Plan:
> -----------
> 
>         Total Cost:             25.6855
>         Query Degree:           1
> 
>               Rows
>              RETURN
>              (   1)
>               Cost
>                I/O
>                |
>                 1
>              NLJOIN
>              (   2)
>              25.6855
>              3.99557
>           /-----+-----\
>         1                1
>      GRPBY            GRPBY
>      (   3)           (   5)
>      12.8262          12.8587
>      1.99557             2
>        |                |
>      46.1442          46.1442
>      IXSCAN           IXSCAN
>      (   4)           (   6)
>      12.8544          12.8544
>         2                2
>        |                |
>      973678           973678
>  INDEX: RTM       INDEX: RTM
>    IPSSTAT_WIN      IPSSTAT_WIN
> 
> 
> I am looking for some magic SQL or hint that will allow me to improve
> this rather 'simple' query.
Try this:
SELECT *
   FROM (SELECT abc FROM T WHERE ID = ?
          ORDER BY abc DESC FETCH FIRST ROW ONLY) AS Z,
        (SELECT abc FROM T WHERE ID = ?
          ORDER BY abc ASC FETCH FIRST ROW ONLY) AS Y

Cheers
Serge

-- 
Serge Rielau
DB2 Solutions Development
IBM Toronto Lab
 




 12 Posts in Topic:
Question about MIN/MAX optimization
Michel Esber <michel@[  2008-04-25 08:05:00 
Re: Question about MIN/MAX optimization
Serge Rielau <srielau@  2008-04-25 11:15:27 
Re: Question about MIN/MAX optimization
Michel Esber <michel@[  2008-04-25 08:41:47 
Re: Question about MIN/MAX optimization
Serge Rielau <srielau@  2008-04-25 11:52:07 
Re: Question about MIN/MAX optimization
Michel Esber <michel@[  2008-04-25 09:00:01 
Re: Question about MIN/MAX optimization
"Dan van Ginhoven&qu  2008-04-25 16:34:10 
Re: Question about MIN/MAX optimization
"Dan van Ginhoven&qu  2008-04-25 17:03:10 
Re: Question about MIN/MAX optimization
Michel Esber <michel@[  2008-04-25 09:58:22 
Re: Question about MIN/MAX optimization
Serge Rielau <srielau@  2008-04-25 19:10:25 
Re: Question about MIN/MAX optimization
Michel Esber <michel@[  2008-04-26 08:18:19 
Re: Question about MIN/MAX optimization
Serge Rielau <srielau@  2008-04-26 11:57:00 
Re: Question about MIN/MAX optimization
Michel Esber <michel@[  2008-04-26 08:20:15 

Post A Reply:
  Go here to Signup

AddThis Feed Button


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

Contact
tan12V112 Tue Dec 2 20:48:52 CST 2008.