ÖйúIT¶¯Á¦,×îÐÂ×îÈ«µÄIT¼¼Êõ½Ì³Ì
×îÐÂ100ƪ | ÍÆ¼ö100ƪ | רÌâ100ƪ | ÅÅÐаñ | ËÑË÷ | ÔÚÏßAPIÎĵµ | ÍøÍ¨¾µÏñ
Ê× Ò³ | ³ÌÐò¿ª·¢ | ²Ù×÷ϵͳ | Èí¼þÓ¦Óà| Í¼ÐÎͼÏó | ÍøÂçÓ¦Óà| ¾«ÎÄÜöÝÍ | ½ÌÓýÈÏÖ¤ | Ó²¼þά»¤ | Î´ÕûÀíÆª | Õ¾³¤½Ì³Ì
ASP JS PHP¹¤³Ì ASP.NET ÍøÕ¾½¨Éè UML J2EESUN .NET VC VB VFP ÍøÂçά»¤ Êý¾Ý¿â DB2 SQL2000 Oracle Mysql
·þÎñÆ÷ Win2000 Office C DreamWeaver FireWorks Flash PhotoShop ÉÏÍø±¦µä CorelDraw ЭÒé´óÈ« ÍøÂ簲ȫ ΢ÈíÈÏÖ¤
Ó²¼þά»¤  CPU  Ö÷°å  Ó²ÅÌ  ÄÚ´æ  ÏÔ¿¨  ÏÔʾÆ÷  ¼üÅÌÊó±ê  Éù¿¨ÒôÏä  ´òÓ¡»ú  »úÏäµçÔ´  BIOS  Íø¿¨  C#  Java  Delphi  vs.net2005
  µ±Ç°Î»Öãº> ³ÌÐò¿ª·¢ > Êý¾Ý¿â¿ª·¢ > Êý¾Ý¿â×ÛºÏ
¾ÙÒ»¸öweb·­Ò³sqlµ÷ÕûµÄʵÀý
×÷Õß:ØýÃû ʱ¼ä:2004-07-08 10:40 ³ö´¦:»¥Á¬Íø Ôð±à:chinaitpower
              ÕªÒª£º¾ÙÒ»¸öweb·­Ò³sqlµ÷ÕûµÄʵÀý

¡¡¡¡»·¾³£º
¡¡¡¡Linux version 2.4.20-8custom (root@web2) (gcc version 3.2.2 20030222 (Red Hat Linux 3.2.2-5)) #3 SMP Thu Jun 5 22:03:36 CST 2003
¡¡¡¡Mem:¡¡2113466368¡¡
¡¡¡¡Swap: 4194881536¡¡
¡¡¡¡CPU:Á½¸ö³¬Ï̵߳ÄIntel(R) Xeon(TM) CPU 2.40GHz
¡¡¡¡¡¡
¡¡¡¡ÓÅ»¯Ç°Óï¾äÔÚmysqlÀïÃæ²éѯ15Ãë×óÓÒ³öÀ´£¬×ªÒƵ½oracleºó½øÐÐÔÚ²»µ÷ÕûË÷ÒýºÍÓï¾äµÄÇé¿öÏÂÖ´ÐÐʱ¼ä´ó¸ÅÊÇ4-5Ã룬µ÷ÕûºóÖ´ÐÐʱ¼äСÓÚ0.5Ãë¡£
¡¡¡¡¡¡
¡¡¡¡·­Ò³Óï¾ä£º
¡¡¡¡SELECT * FROM¡¡(SELECT T1.*, rownum as linenum FROM¡¡(
¡¡¡¡SELECT /*+ index(a ind_old)*/
¡¡¡¡a.category FROM auction_auctions a WHERE a.category =' 170101 ' AND a.closed='0' AND ends > sysdate AND (a.approve_status>=0)¡¡ORDER BY a.ends) T1¡¡WHERE rownum < 18681) WHERE linenum >= 18641
¡¡¡¡¡¡
¡¡¡¡±»²éѯµÄ±í£ºauction_auctions£¨²úÆ·±í£©
¡¡¡¡±í½á¹¹£º
¡¡¡¡
¡¡¡¡
¡¡¡¡¡¡Code: [Copy to clipboard]¡¡
¡¡¡¡
¡¡¡¡SQL> desc auction_auctions;¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡¡¡Name¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Null?¡¡¡¡Type
¡¡¡¡¡¡----------------------------------------- -------- ----------------------------
¡¡¡¡¡¡ID¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡NOT NULL VARCHAR2(32)
¡¡¡¡¡¡USERNAME¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ VARCHAR2(32)
¡¡¡¡¡¡TITLE¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡CLOB
¡¡¡¡¡¡GMT_MODIFIED¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡NOT NULL DATE
¡¡¡¡¡¡STARTS¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡NOT NULL DATE
¡¡¡¡¡¡DESCRIPTION¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡CLOB
¡¡¡¡¡¡PICT_URL¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ CLOB
¡¡¡¡¡¡CATEGORY¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡NOT NULL VARCHAR2(11)
¡¡¡¡¡¡MINIMUM_BID¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡NUMBER
¡¡¡¡¡¡RESERVE_PRICE¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡NUMBER
¡¡¡¡¡¡BUY_NOW¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡NUMBER
¡¡¡¡¡¡AUCTION_TYPE¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ CHAR(1)
¡¡¡¡¡¡DURATION¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ VARCHAR2(7)
¡¡¡¡¡¡INCREMENTNUM¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡NOT NULL NUMBER
¡¡¡¡¡¡CITY¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ VARCHAR2(30)
¡¡¡¡¡¡PROV¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ VARCHAR2(20)
¡¡¡¡¡¡LOCATION¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ VARCHAR2(40)
¡¡¡¡¡¡LOCATION_ZIP¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ VARCHAR2(6)
¡¡¡¡¡¡SHIPPING¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ CHAR(1)
¡¡¡¡¡¡PAYMENT¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡CLOB
¡¡¡¡¡¡INTERNATIONAL¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡CHAR(1)
¡¡¡¡¡¡ENDS¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡NOT NULL DATE
¡¡¡¡¡¡CURRENT_BID¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡NUMBER
¡¡¡¡¡¡CLOSED¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ CHAR(2)
¡¡¡¡¡¡PHOTO_UPLOADED¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ CHAR(1)
¡¡¡¡¡¡QUANTITY¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ NUMBER(11)
¡¡¡¡¡¡STORY¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡CLOB
¡¡¡¡¡¡HAVE_INVOICE¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡NOT NULL NUMBER(1)
¡¡¡¡¡¡HAVE_GUARANTEE¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡NOT NULL NUMBER(1)
¡¡¡¡¡¡STUFF_STATUS¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡NOT NULL NUMBER(1)
¡¡¡¡¡¡APPROVE_STATUS¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡NOT NULL NUMBER(1)
¡¡¡¡¡¡OLD_STARTS¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡NOT NULL DATE
¡¡¡¡¡¡ZOO¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡VARCHAR2(10)
¡¡¡¡¡¡PROMOTED_STATUS¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ NOT NULL NUMBER(1)
¡¡¡¡¡¡REPOST_TYPE¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡CHAR(1)
¡¡¡¡¡¡REPOST_TIMES¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡NOT NULL NUMBER(4)
¡¡¡¡¡¡SECURE_TRADE_AGREE¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡NOT NULL NUMBER(1)
¡¡¡¡¡¡SECURE_TRADE_TRANSACTION_FEE¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ VARCHAR2(16)
¡¡¡¡¡¡SECURE_TRADE_ORDINARY_POST_FEE¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ NUMBER
¡¡¡¡¡¡SECURE_TRADE_FAST_POST_FEE¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ NUMBER
¡¡¡¡
¡¡¡¡
¡¡¡¡
¡¡¡¡
¡¡¡¡±í¼Ç¼Êý¼°´óС
¡¡¡¡SQL> select count(*) from auction_auctions;
¡¡¡¡¡¡
¡¡¡¡¡¡ COUNT(*)
¡¡¡¡----------
¡¡¡¡537351
¡¡¡¡¡¡
¡¡¡¡SQL> select segment_name,bytes,blocks from user_segments where segment_name ='AUCTION_AUCTIONS';
¡¡¡¡¡¡
¡¡¡¡SEGMENT_NAME¡¡¡¡¡¡¡¡¡¡BYTES¡¡¡¡ BLOCKS
¡¡¡¡AUCTION_AUCTIONS¡¡¡¡¡¡1059061760¡¡¡¡ 129280
¡¡¡¡¡¡
¡¡¡¡±íÉÏÔ­ÓеÄË÷Òý
¡¡¡¡create index ind_old on auction_auctions(closed,approve_status,category,ends) tablespace tbsindex compress 2;
¡¡¡¡¡¡
¡¡¡¡SQL> select segment_name,bytes,blocks from user_segments where segment_name = 'IND_OLD';
¡¡¡¡¡¡
¡¡¡¡SEGMENT_NAME¡¡¡¡¡¡¡¡¡¡ BYTES¡¡¡¡ BLOCKS
¡¡¡¡IND_OLD¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 20971520¡¡¡¡¡¡ 2560
¡¡¡¡¡¡
¡¡¡¡±íºÍË÷Òý¶¼ÒѾ­·ÖÎö¹ý£¬ÎÒÃÇÀ´¿´Ò»ÏÂsqlÖ´ÐеķÑÓÃ
¡¡¡¡SQL> set autotrace trace;
¡¡¡¡SQL> SELECT * FROM¡¡(SELECT T1.*, rownum as linenum FROM¡¡(SELECT a.* FROM auction_auctions a WHERE a.category like '18%' AND a.closed='0' AND ends¡¡> sysdate AND (a.approve_status>=0)¡¡ORDER BY a.ends) T1¡¡WHERE rownum <18681) WHERE linenum >= 18641;
¡¡¡¡¡¡
¡¡¡¡40 rows selected.
¡¡¡¡¡¡
¡¡¡¡Execution Plan
¡¡¡¡----------------------------------------------------------
¡¡¡¡¡¡¡¡0¡¡¡¡¡¡SELECT STATEMENT Optimizer=CHOOSE (Cost=19152 Card=18347 Byt
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ es=190698718)
¡¡¡¡¡¡
¡¡¡¡¡¡¡¡1¡¡¡¡0¡¡ VIEW (Cost=19152 Card=18347 Bytes=190698718)
¡¡¡¡¡¡¡¡2¡¡¡¡1¡¡¡¡ COUNT (STOPKEY)
¡¡¡¡¡¡¡¡3¡¡¡¡2¡¡¡¡¡¡ VIEW (Cost=19152 Card=18347 Bytes=190460207)
¡¡¡¡¡¡¡¡4¡¡¡¡3¡¡¡¡¡¡¡¡ TABLE ACCESS (BY INDEX ROWID) OF 'AUCTION_AUCTIONS'
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ (Cost=19152 Card=18347 Bytes=20860539)
¡¡¡¡¡¡
¡¡¡¡¡¡¡¡5¡¡¡¡4¡¡¡¡¡¡¡¡¡¡ INDEX (RANGE SCAN) OF 'IND_OLD' (NON-UNIQUE) (Cost
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ =810 Card=186003)
¡¡¡¡¡¡
¡¡¡¡Statistics
¡¡¡¡----------------------------------------------------------
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 0¡¡recursive calls
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 0¡¡db block gets
¡¡¡¡¡¡¡¡¡¡ 19437¡¡consistent gets
¡¡¡¡¡¡¡¡¡¡ 18262¡¡physical reads
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 0¡¡redo size
¡¡¡¡¡¡¡¡¡¡114300¡¡bytes sent via SQL*Net to client
¡¡¡¡¡¡¡¡¡¡ 56356¡¡bytes received via SQL*Net from client
¡¡¡¡¡¡¡¡¡¡¡¡ 435¡¡SQL*Net roundtrips to/from client
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 0¡¡sorts (memory)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 0¡¡sorts (disk)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡40¡¡rows processed
¡¡¡¡¡¡
¡¡¡¡ÎÒÃÇ¿ÉÒÔ¿´µ½ÕâÌõsqlÓï¾äͨ¹ýË÷Òý·¶Î§É¨ÃèÕÒµ½×îÀïÃæµÄ½á¹û¼¯£¬È»ºóͨ¹ýÁ½¸öview²Ù×÷×îºóµÃ³öÊý¾Ý¡£ÆäÖÐ18502¡¡consistent gets£¬17901¡¡physical reads
¡¡¡¡¡¡
¡¡¡¡ÎÒÃÇÀ´¿´Ò»ÏÂÕâ¸öË÷Òý½¨µÄµ½µ×ºÏ²»ºÏÀí£¬ÏÈ¿´Ï¸÷¸ö²éѰÁеÄdistinctÖµ
¡¡¡¡select count(distinct ends) from auction_auctions;
¡¡¡¡¡¡
¡¡¡¡COUNT(DISTINCTENDS)
¡¡¡¡-------------------
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡338965
¡¡¡¡¡¡
¡¡¡¡SQL> select count(distinct category) from auction_auctions;
¡¡¡¡¡¡
¡¡¡¡COUNT(DISTINCTCATEGORY)
¡¡¡¡-----------------------
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡1148
¡¡¡¡¡¡
¡¡¡¡SQL> select count(distinct closed) from auction_auctions;
¡¡¡¡¡¡
¡¡¡¡COUNT(DISTINCTCLOSED)
¡¡¡¡---------------------
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 2
¡¡¡¡SQL> select count(distinct approve_status) from auction_auctions;
¡¡¡¡¡¡
¡¡¡¡COUNT(DISTINCTAPPROVE_STATUS)
¡¡¡¡-----------------------------
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 5
¡¡¡¡¡¡
¡¡¡¡Ò³Ë÷ÒýÀïÁÐÆ½¾ù´æ´¢³¤¶È
¡¡¡¡SQL> select avg(vsize(ends)) from auction_auctions;
¡¡¡¡¡¡
¡¡¡¡AVG(VSIZE(ENDS))
¡¡¡¡----------------
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡7
¡¡¡¡¡¡
¡¡¡¡SQL> select avg(vsize(closed)) from auction_auctions;
¡¡¡¡¡¡
¡¡¡¡AVG(VSIZE(CLOSED))
¡¡¡¡------------------
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡2
¡¡¡¡¡¡
¡¡¡¡SQL> select avg(vsize(category)) from auction_auctions;
¡¡¡¡¡¡
¡¡¡¡AVG(VSIZE(CATEGORY))
¡¡¡¡--------------------
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 5.52313106
¡¡¡¡¡¡
¡¡¡¡SQL> select avg(vsize(approve_status)) from auction_auctions;
¡¡¡¡¡¡
¡¡¡¡AVG(VSIZE(APPROVE_STATUS))
¡¡¡¡--------------------------
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 1.67639401
¡¡¡¡¡¡
¡¡¡¡ÎÒÃÇÀ´¹ÀËãһϸ÷ÖÖ×éºÏË÷ÒýµÄ´óС£¬¿ÉÒÔ¿´µ½closed,approve_status£¬category¶¼ÊÇÏà¶Ô½ÏµÍ¼¯ÊƵÄÁУ¨Öظ´Öµ½Ï¶à£©£¬ÏÂÃæÎÒÃÇÀ´´ó¸Å¼ÆËãϸ÷ÖÖÒ³Ë÷ÒýÐèÒªµÄ¿Õ¼ä
¡¡¡¡¡¡
¡¡¡¡column¡¡¡¡¡¡¡¡¡¡¡¡¡¡ distinct num¡¡¡¡¡¡¡¡column len
¡¡¡¡ends¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡338965¡¡¡¡¡¡¡¡¡¡¡¡¡¡7¡¡
¡¡¡¡category¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 1148¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡5.5
¡¡¡¡closed¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 2¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 2¡¡
¡¡¡¡approve_status¡¡¡¡¡¡¡¡¡¡5¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 1.7¡¡
¡¡¡¡¡¡
¡¡¡¡index1: (ends,closed,category,approve_status) compress 2
¡¡¡¡ends:distinct number---338965
¡¡¡¡closed: distinct number---2
¡¡¡¡index size=338965*2*(9+2)+ 537351*(1.7+5.5+6)=14603998
¡¡¡¡¡¡
¡¡¡¡index2: (closed,category,ends,approve_status)
¡¡¡¡closed: distinct number---2
¡¡¡¡category: distinct number---1148
¡¡¡¡index size=2*1148*(2+5.5)+537351*(7+1.7+6)=7916279
¡¡¡¡¡¡
¡¡¡¡index3: (closed,approve_status,category,ends)
¡¡¡¡closed: distinct number---2
¡¡¡¡approve_status: distinct number¡ª5
¡¡¡¡index size=2*5*(2+1.7)+537351*(7+5.5+6)=9941030
¡¡¡¡¡¡
¡¡¡¡½á¹û³öÀ´ÁË£¬index2: (closed,category,ends,approve_status)µÄË÷Òý×îС
¡¡¡¡¡¡
¡¡¡¡ÎÒÃÇÔÙÀ´¿´Ò»ÏÂÓï¾ä
¡¡¡¡SELECT * FROM¡¡(SELECT T1.*, rownum as linenum FROM¡¡(SELECT a.* FROM auction_auctions a WHERE a.category like '18%' AND a.closed='0' AND ends¡¡> sysdate AND (a.approve_status>=0)¡¡ORDER BY a.ends) T1¡¡WHERE rownum <18681) WHERE linenum >= 18641;
¡¡¡¡¿ÉÒÔ¿´³öÕâ¸ösqlÓï¾äÓкܴóÓÅ»¯ÓàµØ£¬Ê×ÏÈ×îÀïÃæµÄ½á¹û¼¯SELECT a.* FROM auction_auctions a WHERE a.category like '18%' AND a.closed='0' AND ends¡¡> sysdate AND (a.approve_status>=0)¡¡ORDER BY a.ends£¬ÕâÀïµÄ»°»á×ßindex range scan,È»ºótable scan by rowid£¬ÕâÑùµÄ»°Èç¹û·ûºÏÌõ¼þµÄÊý¾Ý¶àµÄ»°Ï൱ºÄ×ÊÔ´£¬ÎÒÃÇ¿ÉÒÔ¸Äд³É
¡¡¡¡SELECT a.rowid FROM auction_auctions a WHERE a.category like '18%' AND a.closed='0' AND ends¡¡> sysdate AND (a.approve_status>=0)¡¡ORDER BY a.ends
¡¡¡¡ÕâÑùµÄ»°×îÀïÃæµÄ½á¹û¼¯Ö»ÐèÒªindex fast full scan¾Í¿ÉÒÔÍê³ÉÁË£¬ÔÙ¸ÄдһϵóöÒÔÏÂÓï¾ä
¡¡¡¡¡¡
¡¡¡¡select * from auction_auctions where rowid in (SELECT rid FROM¡¡(
¡¡¡¡SELECT T1.rowid rid, rownum as linenum FROM¡¡
¡¡¡¡(SELECT a.rowid FROM auction_auctions a WHERE a.category like '18%' AND a.closed='0' AND ends > sysdate AND¡¡
¡¡¡¡(a.approve_status>=0)¡¡ORDER BY a.ends) T1¡¡WHERE rownum < 18681) WHERE linenum >= 18641)
¡¡¡¡¡¡
¡¡¡¡ÏÂÃæÎÒÃÇÀ´²âÊÔÒ»ÏÂÕâ¸öË÷ÒýµÄ²éѯ¿ªÏú
¡¡¡¡¡¡
¡¡¡¡select * from auction_auctions where rowid in (SELECT rid FROM¡¡(
¡¡¡¡SELECT T1.rowid rid, rownum as linenum FROM¡¡
¡¡¡¡(SELECT a.rowid FROM auction_auctions a WHERE a.category like '18%' AND a.closed='0' AND ends > sysdate AND¡¡
¡¡¡¡(a.approve_status>=0)¡¡ORDER BY a.closed,a.ends) T1¡¡WHERE rownum < 18681) WHERE linenum >= 18641)
¡¡¡¡¡¡
¡¡¡¡Execution Plan
¡¡¡¡----------------------------------------------------------
¡¡¡¡¡¡¡¡0¡¡¡¡¡¡SELECT STATEMENT Optimizer=CHOOSE (Cost=18698 Card=18344 Byt
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ es=21224008)
¡¡¡¡¡¡
¡¡¡¡¡¡¡¡1¡¡¡¡0¡¡ NESTED LOOPS (Cost=18698 Card=18344 Bytes=21224008)
¡¡¡¡¡¡¡¡2¡¡¡¡1¡¡¡¡ VIEW (Cost=264 Card=18344 Bytes=366880)
¡¡¡¡¡¡¡¡3¡¡¡¡2¡¡¡¡¡¡ SORT (UNIQUE)
¡¡¡¡¡¡¡¡4¡¡¡¡3¡¡¡¡¡¡¡¡ COUNT (STOPKEY)
¡¡¡¡¡¡¡¡5¡¡¡¡4¡¡¡¡¡¡¡¡¡¡ VIEW (Cost=264 Card=18344 Bytes=128408)
¡¡¡¡¡¡¡¡6¡¡¡¡5¡¡¡¡¡¡¡¡¡¡¡¡ SORT (ORDER BY STOPKEY) (Cost=264 Card=18344 Byt
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ es=440256)
¡¡¡¡¡¡
¡¡¡¡¡¡¡¡7¡¡¡¡6¡¡¡¡¡¡¡¡¡¡¡¡¡¡ INDEX (FAST FULL SCAN) OF 'IDX_AUCTION_BROWSE'
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡(NON-UNIQUE) (Cost=159 Card=18344 Bytes=440256)
¡¡¡¡¡¡
¡¡¡¡¡¡¡¡8¡¡¡¡1¡¡¡¡ TABLE ACCESS (BY USER ROWID) OF 'AUCTION_AUCTIONS' (Cost
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ =1 Card=1 Bytes=1137)
¡¡¡¡¡¡
¡¡¡¡Statistics
¡¡¡¡----------------------------------------------------------
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 0¡¡recursive calls
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 0¡¡db block gets
¡¡¡¡¡¡¡¡¡¡¡¡2080¡¡consistent gets
¡¡¡¡¡¡¡¡¡¡¡¡1516¡¡physical reads
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 0¡¡redo size
¡¡¡¡¡¡¡¡¡¡114840¡¡bytes sent via SQL*Net to client
¡¡¡¡¡¡¡¡¡¡ 56779¡¡bytes received via SQL*Net from client
¡¡¡¡¡¡¡¡¡¡¡¡ 438¡¡SQL*Net roundtrips to/from client
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 2¡¡sorts (memory)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 0¡¡sorts (disk)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡40¡¡rows processed
¡¡¡¡¡¡
¡¡¡¡¿ÉÒÔ¿´µ½consistent gets´Ó19437½µµ½2080£¬physical reads´Ó18262½µµ½1516£¬²éѯʱ¼äÒ²´Ô4Ãë×óÓÒϽµµ½0¡£5Ã룬¿ÉÒÔÀ´ËµÕâ´Îsqlµ÷ÕûÈ¡µÃÁËÔ¤ÆÚµÄЧ¹û¡£
¡¡¡¡¡¡
¡¡¡¡½ñÌìÓÖÐÞ¸ÄÁËÒ»ÏÂÓï¾ä£¬
¡¡¡¡¡¡
¡¡¡¡SQL> select * from auction_auctions where rowid in¡¡
¡¡¡¡¡¡ 2¡¡(SELECT rid FROM¡¡(¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡¡¡ 3¡¡SELECT T1.rowid rid, rownum as linenum FROM¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡¡¡ 4¡¡(SELECT a.rowid FROM auction_auctions a¡¡
¡¡¡¡¡¡ 5¡¡¡¡ WHERE a.category like '18%' AND a.closed='0' AND ends > sysdate AND¡¡
¡¡¡¡a.approve_status>=0
¡¡¡¡¡¡ 6¡¡¡¡7¡¡ORDER BY a.closed,a.category,a.ends) T1¡¡
¡¡¡¡¡¡ 8¡¡WHERE rownum < 18600) WHERE linenum >= 18560)¡¡¡¡;
¡¡¡¡¡¡
¡¡¡¡40 rows selected.
¡¡¡¡¡¡
¡¡¡¡Execution Plan
¡¡¡¡----------------------------------------------------------
¡¡¡¡¡¡¡¡0¡¡¡¡¡¡SELECT STATEMENT Optimizer=CHOOSE (Cost=17912 Card=17604 Byt
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ es=20367828)
¡¡¡¡¡¡
¡¡¡¡¡¡¡¡1¡¡¡¡0¡¡ NESTED LOOPS (Cost=17912 Card=17604 Bytes=20367828)
¡¡¡¡¡¡¡¡2¡¡¡¡1¡¡¡¡ VIEW (Cost=221 Card=17604 Bytes=352080)
¡¡¡¡¡¡¡¡3¡¡¡¡2¡¡¡¡¡¡ SORT (UNIQUE)
¡¡¡¡¡¡¡¡4¡¡¡¡3¡¡¡¡¡¡¡¡ COUNT (STOPKEY)
¡¡¡¡¡¡¡¡5¡¡¡¡4¡¡¡¡¡¡¡¡¡¡ VIEW (Cost=221 Card=17604 Bytes=123228)
¡¡¡¡¡¡¡¡6¡¡¡¡5¡¡¡¡¡¡¡¡¡¡¡¡ INDEX (RANGE SCAN) OF 'IDX_AUCTION_BROWSE' (NON-
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ UNIQUE) (Cost=221 Card=17604 Bytes=422496)
¡¡¡¡¡¡
¡¡¡¡¡¡¡¡7¡¡¡¡1¡¡¡¡ TABLE ACCESS (BY USER ROWID) OF 'AUCTION_AUCTIONS' (Cost
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ =1 Card=1 Bytes=1137)
¡¡¡¡¡¡
¡¡¡¡Statistics
¡¡¡¡----------------------------------------------------------
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 0¡¡recursive calls
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 0¡¡db block gets
¡¡¡¡¡¡¡¡¡¡¡¡ 550¡¡consistent gets
¡¡¡¡¡¡¡¡¡¡¡¡¡¡14¡¡physical reads
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 0¡¡redo size
¡¡¡¡¡¡¡¡¡¡117106¡¡bytes sent via SQL*Net to client
¡¡¡¡¡¡¡¡¡¡ 56497¡¡bytes received via SQL*Net from client
¡¡¡¡¡¡¡¡¡¡¡¡ 436¡¡SQL*Net roundtrips to/from client
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 1¡¡sorts (memory)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 0¡¡sorts (disk)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡40¡¡rows processed
¡¡¡¡¡¡
¡¡¡¡ÔÚorder byÀï¼ÓÉÏË÷Òýǰµ¼ÁУ¬Ïû³ýÁË
¡¡¡¡¡¡¡¡6¡¡¡¡5¡¡¡¡¡¡¡¡¡¡¡¡ SORT (ORDER BY STOPKEY) (Cost=264 Card=18344 Byt
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ es=440256)
¡¡¡¡£¬°Ñconsistent gets´Ó2080½µµ½550¡¡
¹Ø±Õ±¾Ò³
 
Ê×Ò³ | Ͷ×ÊÓëºÏ×÷ | ·þÎñÌõ¿î | Òþ˽Õþ²ß | Êղر¾Õ¾ | ÉèΪÊ×Ò³ | ÐÂÓû§×¢²á | ÃâÔðÉùÃ÷ | ʹÓðïÖú
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com °æÈ¨ËùÓÐ