DBAsupport.com Forums - Powered by vBulletin
Results 1 to 8 of 8

Thread: How to calculate table + index size

Threaded View

  1. #6
    Join Date
    Dec 2002
    Location
    Bangalore ( India )
    Posts
    2,434
    Originally posted by jmodic
    Nope. At least not without trace-dumping all the blocks belonging to the particular segment and inspecting those dumps.
    Why not...and why do u wana go for dumping all blocks to know which extent has how many rows.. crazy idea.. when it can be done in a single query ...


    Code:
    Select 
      Count(*) 
    From 
      My_Table 
    Where 
      Dbms_Rowid.Rowid_Relative_Fno(Rowid) = My_Extent's_Relative_File_Number
    ;
    
    
    Or possibally
    
    Select 
      Segment_Name  ,
      Extent_Id     ,
      A.CNT
    From
    (
    Select 
      Dbms_Rowid.Rowid_Relative_Fno(Rowid) RFN ,
      Count(*) CNT
    From
      My_Table
    Group By
      Dbms_Rowid.Rowid_Relative_Fno(Rowid)
    ) A,
    DBA_EXTENTS
    Where
      Segment_Name = 'My_Table' And
      RELATIVE_FNO  = A.RFN
    ;
    
    Ofcourse this will eat up CPU.
    Hope i am correct in reading the requirement.

    Abhay.
    Last edited by abhaysk; 02-18-2004 at 09:54 AM.
    funky...

    "I Dont Want To Follow A Path, I would Rather Go Where There Is No Path And Leave A Trail."

    "Ego is the worst thing many have, try to overcome it & you will be the best, if not good, person on this earth"

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  


Click Here to Expand Forum to Full Width