thank you Alexander

From: "Schroeder, Alexander" <[EMAIL PROTECTED]>
To: ��?��?<[EMAIL PROTECTED]>
Subject: RE: optimize a sql statement
Date: Fri, 17 Jun 2005 09:16:44 +0200

Hello Liu,

the costvalue may depend on the actual values used for expressions in the
statement. If you change the constants
(you changed 10000 to 515603 and 'COOKING' to something other) you can do
no meaningful comparison of
different cost values.

So take care when comparing explain output for different values.

Regards
Alexander Schr枚der
SAP DB, SAP Labs Berlin

> -----Original Message-----
> From: ��?��?[mailto:[EMAIL PROTECTED]
> Sent: Thursday, June 16, 2005 5:01 AM
> To: [EMAIL PROTECTED]; Schroeder, Alexander;
> [email protected]
> Subject: RE: optimize a sql statement
>
> I understand the produce of the phenomennon.It because
> 'COOKING'in the
> table "ITEM" column "I_SUBJECT".
> Now,I change my sql statment.
> Follow is the statement:
> --------------------------------------------------------------
> --------------------------
>
> SELECT SUM(OL_QTY) SUMOLQTY,I_ID, I_TITLE, A_FNAME, A_LNAME
> FROM DBA.ITEM,
> DBA.AUTHOR, DBA.ORDER_LINE
>   WHERE ITEM.I_ID = ORDER_LINE.OL_I_ID  AND ITEM.I_A_ID =
> AUTHOR.A_ID  AND
> ORDER_LINE.OL_O_ID >515603 AND ITEM.I_SUBJECT =   'COOKING'
>   GROUP BY I_ID, I_TITLE, A_FNAME, A_LNAME
> --------------------------------------------------------------
> --------------------------
>
> The condition "ORDER_LINE.OL_O_ID >10000" turn into
> "ORDER_LINE.OL_O_ID
> >515603".
> Follow is the explain output:
> --------------------------------------------------------------
> --------------------------
>
> DBA  ORDER_LINE  ORDER_LINE_OL_O_ID  RANGE CONDITION FOR
> INDEX
>        20532
> DBA  ITEM        ITEC_BOTH1          JOIN VIA RANGE OF
> MULTIPLE INDEXED
> COL.         810
>                  I_ID                     (USED INDEX COLUMN)
>
>
> DBA  AUTHOR      A_ID                JOIN VIA KEY COLUMN
>
>          125
>                                      TABLE HASHED
>
>
>                                           RESULT IS COPIED
> , COSTVALUE IS
>         2162
> --------------------------------------------------------------
> --------------------------
>
> The costvalue is going down.
> But the costvalue too high to apply.
> For this explain output,how do i optimize the sql statement?
>
>
> >From: ��?��?<[EMAIL PROTECTED]>
> >To: [EMAIL PROTECTED], [email protected]
> >Subject: RE: optimize a sql statement
> >Date: Thu, 16 Jun 2005 10:44:39 +0800
> >
> >hello schroeder,
> >
> >I notice a phenomenon.
> >When  the condition "ITEM.I_SUBJECT =   'COOKING'" be changed into
> >others,the costvalue 5443 turn to 19!!
> >For example, "ITEM.I_SUBJECT =   'qwerqwer'" or "ITEM.I_SUBJECT =
> >'COOK'" or "ITEM.I_SUBJECT =   'COOKINGG'".
> >
> >why??
> >
> >
> >>From: "Schroeder, Alexander" <[EMAIL PROTECTED]>
> >>To: ��?��?<[EMAIL PROTECTED]>,        <[email protected]>
> >>Subject: RE: optimize a sql statement
> >>Date: Wed, 15 Jun 2005 08:18:34 +0200
> >>
> >>Hello Liu,
> >>
> >>I only meant that - aside from simple cases - any suggestion must
> >>take the
> >output of the EXPLAIN
> >>command into account (the complete output), so you should post it
> >>along
> >with your query. If you only
> >>say 'the cost is 5443 and it's too high' there can no suggestion be
> >>given.
> >>
> >>Regards
> >>Alexander Schr���der
> >>SAP DB, SAP Labs Berlin
> >>
> >> > -----Original Message-----
> >> > From: ��?��?[mailto:[EMAIL PROTECTED]
> >> > Sent: Tuesday, June 14, 2005 6:28 PM
> >> > To: Schroeder, Alexander; [email protected]
> >> > Subject: RE: optimize a sql statement
> >> >
> >> > I know the knowledge about you mean.
> >> > But can i optimize this operation at the status?
> >> >
> >> > >From: "Schroeder, Alexander" <[EMAIL PROTECTED]>
> >> > >To: ��?��?<[EMAIL PROTECTED]>,
> >><[email protected]>
> >> > >Subject: RE: optimize a sql statement
> >> > >Date: Tue, 14 Jun 2005 16:16:06 +0200
> >> > >
> >> > >Hello Liu,
> >> > >
> >> > >it would possibly help to identify whether there are any
> >> > possibilities to
> >> > optimize the statement if you post
> >> > >the EXPLAIN output, as the strategy chosen often depends on
> >> > the table
> >> > statistics, i.e. depends on the data
> >> > >contained in the tables.
> >> > >
> >> > >Regards
> >> > >Alexander  Schr���姝�er
> >> > >SAP DB, SAP Labs Berlin
> >> > >
> >> > > > -----Original Message-----
> >> > > > From: ��?��?[mailto:[EMAIL PROTECTED]
> >> > > > Sent: Tuesday, June 14, 2005 3:56 PM
> >> > > > To: [email protected]
> >> > > > Subject: optimize a sql statement
> >> > > >
> >> > > > I have a sql statement been created basing three table.
> >> > > > This is the table's creating statement:
> >> > > >
> >>--------------------------------------------------------------
> >> > > > -----------------------
> >> > > >
> >> > > > CREATE TABLE "DBA"."ITEM"
> >> > > > (
> >> > > >    "I_ID"               Integer    NOT NULL,
> >> > > >    "I_TITLE"               Varchar (60) ASCII,
> >> > > >    "I_A_ID"               Integer,
> >> > > >    "I_PUB_DATE"               Date,
> >> > > >    "I_PUBLISHER"               Varchar (60) ASCII,
> >> > > >    "I_SUBJECT"               Varchar (60) ASCII,
> >> > > >    "I_DESC"               Varchar (500) ASCII,
> >> > > >    "I_RELATED1"               Integer,
> >> > > >    "I_RELATED2"               Integer,
> >> > > >    "I_RELATED3"               Integer,
> >> > > >    "I_RELATED4"               Integer,
> >> > > >    "I_RELATED5"               Integer,
> >> > > >    "I_THUMBNAIL"               Varchar (40) ASCII,
> >> > > >    "I_IMAGE"               Varchar (40) ASCII,
> >> > > >    "I_SRP"               Fixed (17,2),
> >> > > >    "I_COST"               Fixed (17,2),
> >> > > >    "I_AVAIL"               Date,
> >> > > >    "I_STOCK"               Integer,
> >> > > >    "I_ISBN"               Char (13) ASCII,
> >> > > >    "I_PAGE"               Integer,
> >> > > >    "I_BACKING"               Varchar (15) ASCII,
> >> > > >    "I_DIMENSIONS"               Varchar (25) ASCII,
> >> > > >    PRIMARY KEY ("I_ID")
> >> > > > )
> >> > > >
> >> > > > CREATE TABLE "DBA"."AUTHOR"
> >> > > > (
> >> > > >    "A_ID"               Integer    NOT NULL,
> >> > > >    "A_FNAME"               Varchar (20) ASCII,
> >> > > >    "A_LNAME"               Varchar (20) ASCII,
> >> > > >    "A_MNAME"               Varchar (20) ASCII,
> >> > > >    "A_DOB"               Date,
> >> > > >    "A_BIO"               Varchar (500) ASCII,
> >> > > >    PRIMARY KEY ("A_ID")
> >> > > > )
> >> > > >
> >> > > > CREATE TABLE "DBA"."ORDER_LINE"
> >> > > > (
> >> > > >    "OL_ID"               Integer    NOT NULL,
> >> > > >    "OL_O_ID"               Integer    NOT NULL,
> >> > > >    "OL_I_ID"               Integer,
> >> > > >    "OL_QTY"               Integer,
> >> > > >    "OL_DISCOUNT"               Fixed (5,2),
> >> > > >    "OL_COMMENTS"               Varchar (100) ASCII,
> >> > > >    PRIMARY KEY ("OL_ID", "OL_O_ID")
> >> > > > )
> >> > > > CREATE INDEX "ORDER_LINE_OL_I_ID" ON
> >> > "DBA"."ORDER_LINE"("OL_I_ID" ASC)
> >> > > > CREATE INDEX "ITEM_I_A_ID" ON "DBA"."ITEM"("I_A_ID" ASC)
> >> > > > CREATE INDEX "ORDER_LINE_OL_O_ID" ON
> >> > "DBA"."ORDER_LINE"("OL_O_ID" ASC)
> >> > > > CREATE INDEX "ITEM_I_SUBJECT" ON "DBA"."ITEM"("I_SUBJECT"
> >>ASC)
> >> > > >
> >>--------------------------------------------------------------
> >> > > > ---------------
> >> > > >
> >> > > > Follow is the sql statement:
> >> > > >
> >>--------------------------------------------------------------
> >> > > > ---------------
> >> > > >
> >> > > > SELECT SUM(OL_QTY) SUMOLQTY,I_ID, I_TITLE, A_FNAME, A_LNAME
> >> > > > FROM DBA.ITEM,
> >> > > > DBA.AUTHOR, DBA.ORDER_LINE
> >> > > > WHERE ITEM.I_ID = ORDER_LINE.OL_I_ID  AND ITEM.I_A_ID =
> >> > > > AUTHOR.A_ID  AND
> >> > > > ORDER_LINE.OL_O_ID >1 AND ITEM.I_SUBJECT =   'COOKING'
> >> > > > GROUP BY I_ID, I_TITLE, A_FNAME, A_LNAME
> >> > > >
> >>--------------------------------------------------------------
> >> > > > ---------------
> >> > > >
> >> > > > I using explain statement.Then i find the cost is 5443
> >>though
> >> > > > the statement
> >> > > > wasn't using table scan search strategy.The cost is too
> >>high.
> >> > > >
> >> > > > Please help me optimize this sql statement. Thanks!
> >> > > >
> >> > > >
> >>_________________________________________________________________
> >> > > >
> 
>>濞���虫唉娴���ュ嫉���瑙���遍�哄�����瀵����娼诲��婊���藉ù婧垮��缁�锕��
��瀹���惧��濞达��娉����?MSN
> >Messenger:
> >> > http://messenger.msn.com/cn
> >> > > >
> >> > > >
> >> > > > --
> >> > > > MaxDB Discussion Mailing List
> >> > > > For list archives: http://lists.mysql.com/maxdb
> >> > > > To unsubscribe:
> >> > > >
> >>http://lists.mysql.com/[EMAIL PROTECTED]
> >> > > >
> >> > > >
> >> >
> >> >
> >>_________________________________________________________________
> >> > 
娴���ゆ�ゆ��������娑�濠�娓舵径��娈���㈤����������绘�㈢化��ょ埠��
?MSN Hotmail��?
> >http://www.hotmail.com
> >> >
> >> >
> >
> >_________________________________________________________________
> 
>涓������虹��������杩�琛�浜ゆ��锛�璇蜂娇���
 MSN Messenger:
> >http://messenger.msn.com/cn
> >
> >
> >--
> >MaxDB Discussion Mailing List
> >For list archives: http://lists.mysql.com/maxdb
> >To unsubscribe:
> >http://lists.mysql.com/[EMAIL PROTECTED]
> >
>
> _________________________________________________________________
> ���璐逛��杞� MSN Explorer:   http://explorer.msn.com/lccn
>
>
> --
> MaxDB Discussion Mailing List
> For list archives: http://lists.mysql.com/maxdb
> To unsubscribe:
> http://lists.mysql.com/[EMAIL PROTECTED]
>
>

_________________________________________________________________
免费下载 MSN Explorer: http://explorer.msn.com/lccn/

--
MaxDB Discussion Mailing List
For list archives: http://lists.mysql.com/maxdb
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to