Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: Order by Problem on 8i
It might and sometimes it might not. Also you cannot be sure what order it
will put the data into a table. Just because you insert data in a
particular order does not mean Oracle will store it in the table in that
physical order. In short with Oracle and the ANSI standard Bliss is
correct, the order of a tuple is unspecified if you don't specify an order.
If you rely on unspecified behavior you will probably be bit by it later. It
is so simple to just specify the order I don't understand why people would
make an issue of not wanting to specify it.
Jim
"David Fitzjarrell" <oratune_at_msn.com> wrote in message
news:32d39fb1.0110261044.2d36ccf6_at_posting.google.com...
> In the absence of any other ordering Oracle DOES display data in the
> order it was inserted into the table. The default behaviour is to
> order by ROWID.
>
> "Bliss" <bliss_is_ignorance_at_hotmail.com> wrote in message
news:<3bd83ba3_1_at_news.tm.net.my>...
> > Hi,
> >
> > Though your script works in 9i, it seems a little illogical to me....
How
> > can you INSERT using ORDER BY? What will you achieve by doing this???
> > Remember that Oracle does not display data in order it is inserted when
you
> > give a SELECT statement. If you can specify what you are trying to
achieve,
> > may be there'll be a solution...
> >
> > Regards,
> > Bliss
> >
> > "tIM" <tjm_at_geac.dk> wrote in message
> > news:b1f8412c.0110250426.69c05a26_at_posting.google.com...
> > > Hi I am faced with a problem ...
> > >
> > > If I run the following code on Oracle 8i the create procedure fails. I
> > > can't figure out why because the command alone works!!!
> > >
> > > Note that this works on 9i (is this a confirmed bug with a patch or
> > > anything!!!?!?)
> > >
> > > TIA
> > >
> > > CREATE TABLE TEST1(
> > > test1 number(1));
> > >
> > > CREATE TABLE TEST2(
> > > test1 number(1));
> > >
> > >
> > >
> > > insert into test1 (test1) select test1
> > > FROM
> > > test2
> > > WHERE
> > > test1='ss'
> > > ORDER BY test1;
> > >
> > > CREATE PROCEDURE TEST
> > > IS
> > > BEGIN
> > > insert into test1 (test1) select test1
> > > FROM
> > > test2
> > > WHERE
> > > test1='ss'
> > > ORDER BY test1;
> > > END;
> > > /
Received on Fri Oct 26 2001 - 15:59:31 CDT
![]() |
![]() |