× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Why doesn't your table have a sequence field (or identity column) in it that you could use in an order by?

At any rate, here is an updated version that should work for you in SQL and will also only give you the fields you are wanting (no RRN field):

SELECT field1,field2,field3 FROM (
SELECT RRN(b) AS RRN,b.* FROM file1 AS b
UNION
SELECT RRN(b)+(SELECT max(RRN(a)) FROM file1 AS a) AS RRN, b.*
FROM file2 AS b) tbl
ORDER BY RRN asc

You will notice this will push the file2 data to the end because it will start with the last RRN from file1. Then we encapsulate that in another SQL statement so you can just get everything except the RRN column.

SQL is the right tool for the job here IMHO. Everything you can do in RPG you can also do in SQL, I have not yet found anything that breaks that theory. Very much the opposite, I found I can do way more in SQL then I can do in RPG.

-----Original Message-----
From: Stone, Joel [mailto:Joel.Stone@xxxxxxxxxx]
Sent: Wednesday, February 13, 2013 9:53 AM
To: Midrange Systems Technical Discussion
Subject: RE: how to retrieve records and make sure they arrive in RRN sequence

A memo is either in the live file or the history file. I am ORDERing be MEMO# then RRN, so dup RRN's between files shouldn't be an issue.

What is the comment about blinders? I would prefer to NOT use RRN. Iseries users normally do a SELECT and the rows appear in arrival sequence.

But for some reason when UNION is introduced, the arrival sequence is lost. I am trying to get the arrival seq with a UNION - if I can do that without RRN that would be great!



-----Original Message-----
From: midrange-l-bounces@xxxxxxxxxxxx [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of DeLong, Eric
Sent: Tuesday, February 12, 2013 5:11 PM
To: Midrange Systems Technical Discussion
Subject: RE: how to retrieve records and make sure they arrive in RRN sequence

You can order by any field name in the format. RRN is not valid within an order by, unless you incorporate RRN into your column select list.

create table qtemp/memotext as
(select a.*, rrn(a) as rownum from mdcmdct a union select b.*, rrn(b) as rownum from mdcmtx1 b

order by rownum ) with data;

Even then, as Vernon pointed out, you will very likely NOT get an ordered set that you expect. Each table has an RRN 1, so which of these should display first...

Honestly, I think you have RRN blinders on...

-Eric DeLong

-----Original Message-----
From: midrange-l-bounces@xxxxxxxxxxxx [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Stone, Joel
Sent: Tuesday, February 12, 2013 5:00 PM
To: Midrange Systems Technical Discussion
Subject: RE: how to retrieve records and make sure they arrive in RRN sequence

Thanks but I have no key - I want to ensure RRN.

I have tried to add ORDER BY RRN but it doesn't seem to like it. Is there a trick to get ORDER BY RRN to work? Must ORDER BY contain only fields in the record?


-----Original Message-----
From: midrange-l-bounces@xxxxxxxxxxxx [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of DeLong, Eric
Sent: Tuesday, February 12, 2013 4:49 PM
To: Midrange Systems Technical Discussion
Subject: RE: how to retrieve records and make sure they arrive in RRN sequence

Specify an ORDER BY clause after the second statement in your UNION...

Arrival sequence means NOTHING in sql. Never count on it, even if it LOOKS like you're getting what you want. The only way to ensure an ordered result is to specify the ORDER BY clause.

-Eric DeLong

-----Original Message-----
From: midrange-l-bounces@xxxxxxxxxxxx [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Stone, Joel
Sent: Tuesday, February 12, 2013 4:33 PM
To: 'Midrange Systems Technical Discussion'
Subject: SQL: how to retrieve records and make sure they arrive in RRN sequence

Normally records seem to arrive in RRN sequence - if no other ORDER BY is stated.

However, when I use UNION to concat two SELECT results together, they are arriving in a random sequence.

How can I assure that the result set is in RRN seq?

However, I don't think I can include RRN in the SELECT because that field is NOT in the result table.

Thanks



create table qtemp/memotext as
(select * from mdcmdct
union
select * from mdcmtx1

) with data;

______________________________________________________________________
This outbound email has been scanned for all viruses by the MessageLabs Skyscan service.
For more information please visit http://www.symanteccloud.com ______________________________________________________________________
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take a moment to review the archives at http://archive.midrange.com/midrange-l.

--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take a moment to review the archives at http://archive.midrange.com/midrange-l.


________________________________________________________________________
This inbound email has been scanned for all viruses by the MessageLabs SkyScan
service.
________________________________________________________________________

______________________________________________________________________
This outbound email has been scanned for all viruses by the MessageLabs Skyscan service.
For more information please visit http://www.symanteccloud.com
______________________________________________________________________

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.