Re: General Quey question.

From: Jacek Gębal <jgebal_at_gmail.com>
Date: Fri, 7 Dec 2018 15:10:27 +0000
Message-ID: <CACQ9E3vBWWBpp0J8V4XNkEZ9esmWa2Xe63tDhOoocsaOYZd_tg_at_mail.gmail.com>



It's not even Oracle.
It's fundamental characteristics of SQL language.

On Fri, 7 Dec 2018, 14:58 Jose Rodriguez <jrodriguez2_at_pythian.com wrote:

> Not meaning to be rude here but you missed an important point: Oracle does
> not guarantee the order of the returned rows unless an ORDER BY clause is
> used in the query.
> Take a look as this quite old AskTom entry
> <https://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:6257473400346237629>
> .
>
> So, no, you probably haven't done anything wrong with the new box,
> everything is working as intended and now that you added the required
> clause, you should be totally fine.
>
> Cheers.
>
> [image: Pythian] <http://www.pythian.com/>
> *Jose Rodriguez* | Oracle Database Consultant | [image: LinkedIn]
> <https://www.linkedin.com/company/pythian>
> *t* +1 613 565 8696 <+1+613+565+8696> *ext.* 1393
> *m* +34 607 55 49 91 <+34+607+55+49+91>
> jrodriguez2_at_pythian.com
> *www.pythian.com* <https://www.pythian.com/>
> [image: Pythian] <https://www.pythian.com/email-footer-click>
>
>
> On Fri, 7 Dec 2018 at 15:48, Storey, Robert (DCSO) <
> RStorey_at_dcso.nashville.org> wrote:
>
>> Here is the scenario.
>>
>>
>>
>> Old 9i database. Records were created and inserted into table years
>> ago. It’s basically a look-up/status table with those rows never being
>> deleted, just certain columns updated.
>>
>>
>>
>> Have a query in a stored procedure cursor that provides a list of values
>> from that table based on one of the column values. No order by clause
>> needed. Returns the records back to stored procedure in the order that
>> they were entered in the table. All is good and as expected.
>>
>>
>>
>> Migrate the database to 11g. Have a development box that, using an
>> export from the 9i, I did an import to the 11g. cursor still returns the
>> records in the right order.
>>
>>
>>
>> Now I migrate to my new production box. Same import used for the dev
>> box. All goes good.
>>
>>
>>
>> Almost 30 days to the hour after the import and go live, this query
>> starts returning the records back in a completely different order. The
>> order returned makes absolutely no sense. Causes some annoyances to the
>> users. Applying an “order by value” to the cursor query and all is back to
>> goodness.
>>
>>
>>
>> There have been a couple other screens in my application that prior to
>> going to production box would return data back in a “entered order” that
>> are now returning the data out of that order. The application allows the
>> user to sort the columns of data returned so it’s a simple click to reorder.
>>
>>
>>
>> I’ve looked at the rowids, and the rowids for the rows for the “out of
>> order” return set are also out of order.
>>
>>
>>
>> Thoughts? Did I miss something setting up my new box?
>>
>>
>>
>> Robert Storey
>>
>> Database Administrator
>>
>> Nashville Sheriff’s Office
>>
>> 615-880-1967
>>
>>
>>
>
> --
>
>
>
>

--
http://www.freelists.org/webpage/oracle-l
Received on Fri Dec 07 2018 - 16:10:27 CET

Original text of this message