Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: question on retrieving rows

Re: question on retrieving rows

From: Jim Kennedy <kennedy-down_with_spammers_at_attbi.com>
Date: Sun, 16 Mar 2003 13:56:08 GMT
Message-ID: <Xn%ca.104548$3D1.3946@sccrnsc01>


It looks for them. It knows what blocks a table consists of (its in the data dictionary) and it searches for the information block by block. (full table scan) If you say select * from emp where country='USA' and state = 'NY' and dept = 'Marketing' and there are only 2 people in the table that fit that description and you do not have an index on any of those fields then Oracle has no choice but to look at all the rows in the emp table. It knows where those blocks are physically located because it looks in the data dictionary to see what the 1st and subsequent blocks are for this table (emp). Then it reads every row in that table until it finds the ones that meet that criterea. (how else could it? How else could any RDBMS?) Jim

--
Replace part of the email address: kennedy-down_with_spammers_at_attbi.com
with family.  Remove the negative part, keep the minus sign.  You can figure
it out.
"andi" <andihp_at_flashmail.com> wrote in message
news:16ce60f4.0303160531.61550749_at_posting.google.com...

> Hi,
> sorry to confuse you. newbie here :P
> like u said, lets say 1 or more rows are on a particular block, and
> off course oracle should know the block location for these rows before
> it retrieve them. My question is from where does oracle get this
> information that these rows are resided on that block? (and how if the
> table is not indexed?)
>
>
> TIA,
> andi
>
>
> "Jim Kennedy" <kennedy-down_with_spammers_at_attbi.com> wrote in message
news:<tkTca.96752$eG2.13965_at_sccrnsc03>...
> > Note sure I understand the question. The data is stored in blocks. So
in a
> > block there are 1 or more rows. If you are accessing the data via some
> > index then the index has the address of the block and the row in the
block
> > as part of the index (row id)
> > Jim
> >
> > --
> > Replace part of the email address: kennedy-down_with_spammers_at_attbi.com
> > with family. Remove the negative part, keep the minus sign. You can
figure
> > it out.
> > "andi" <andihp_at_flashmail.com> wrote in message
> > news:16ce60f4.0303151947.6d414040_at_posting.google.com...
> > > Hi All,
> > > how does oracle know the starting and ending blocks number of
> > > particular tables' rows ?
> > >
> > > TIA,
> > > andi
Received on Sun Mar 16 2003 - 07:56:08 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US