× 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.



It is.  You have to set up another CASE statement, and you may need to set
up a dummy field *without a comma* at the end of the ORDER BY clause.
You'll need commas on your CASE statements so the expression creates
properly.

Also, you can't mix data types within one CASE statement; you have to use
one CASE for alpha's, another for numeric's, etc.

CASE and ORDER BY >= V5R2 only...

Regards,
Reeve Fritchman
Ayers Rock Software LLC
4915 S. West Shore Boulevard
Tampa, Florida 33611-3329
(813) 831-8574 (voice)
(813) 832-6391 (fax)


 


> -----Original Message-----
> From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-
> bounces@xxxxxxxxxxxx] On Behalf Of THarteau@xxxxxxxxxxxxxxxxxx
> Sent: Wednesday, June 23, 2004 9:13 AM
> To: RPG programming on the AS400 / iSeries
> Subject: RE: SQL - Using Case in Order By clause
> 
> 
> Hi,
>       Is it possible to order by more than one fields when you use case in
> SQL?  In all the examples I found, it only had one field on each When.
> For
> example, this works: (The file has fields for entire name, last name &
> first name. I am printing labels, so only need the entire name to print,
> but separate fields for sorting)
> 
>        C/EXEC SQL DECLARE A CURSOR FOR
>        C+ SELECT EMEMP#,EMPNAM,EMSTCD,EMOHYY,EMCORP,EMPAY#
>        C+ FROM HRV6DTA/HRPEMP
>        C+ ORDER BY Case       When :F1Sort = 'Y' then EMEMP#
>        C+                           When :F1Sort = 'N' then EMLNAM
>        C+                           End
>        C/END-EXEC
> 
> But I can't seem to get SEU to accept this:
> 
>       C/EXEC SQL DECLARE A CURSOR FOR
>       C+ SELECT EMEMP#,EMPNAM,EMSTCD,EMOHYY,EMCORP,EMPAY#
>       C+ FROM HRV6DTA/HRPEMP
>       C+ ORDER BY Case  When :F1Sort = 'Y' then EMEMP#
>       C+                      When :F1Sort = 'N' then EMLNAM, EMFNAM
>       C+                      End
>       C/END-EXEC
> 
> I get the message   'Token , was not valid. Valid tokens: END. '
> If this doesn't work, I was going to try to concatenate the last name
> and
> first name and use that to sort. Any ideas?
> 
> <===================================================>
> 
> Terri Harteau
> Felker Brothers Corporation
> ****************
> Paperwork is like kudzu. Both need to be pruned regularly. Usually, a
> flamethrower is overkill.      Usually.
> ****************
> 
> 
> 
> 
> 
> 
> --
> This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing
> list
> To post a message email: RPG400-L@xxxxxxxxxxxx
> To subscribe, unsubscribe, or change list options,
> visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
> or email: RPG400-L-request@xxxxxxxxxxxx
> Before posting, please take a moment to review the archives
> at http://archive.midrange.com/rpg400-l.


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.