Newsletters   Subscriptions  Forums  Store   Career  Media Kit  About Us  Contact  Search   Home 
fhg
Volume 4, Number 33 -- October 6, 2004

Conditional Sorting with SQL

Hey, Ted:


We are a small business in Ohio. Most of the people we do business with are also in Ohio. Is there a way we can retrieve a list of clients with the Ohio clients listed first, followed by all others, in order by state?

--William


SQL/400 can handle this task for you. Use a CASE structure in the ORDER BY clause.

select custnbr, custname, ccity, cstate
  from customer
 order by 
   case cstate when 'OH' then 0 else 1 end,
   cstate, ccity

The first sort field is a case expression. For records that have a state value of OH, this sort field is zero. For all others, this sort field is one. Ohio records sort ahead of all others.

Since you want other states in alphabetical order, I placed the CSTATE field as the second sort field. I didn't know your sort preference within state, so for the third sort field I chose CCITY. The system produces a record set like this one.

 Customer
  account  Customer
   number  name                  City              State
       3   Army Surplus          Brunswick          OH
   30003   Snowman Heat & Air    Lexington          OH
      56   Jak's Liver Emporium  Mexico             OH
       1   48% of Nothing        Klondike           AZ
     222   Sardine Paradise      Happah Palloolah   CA
       2   Robert R. Roberts IV  New Yolk           CA
       3   Donaldson Electric    Whittier           CA
      44   Joe's Shoes           Duluthe            GA
       3   Sal Monella           Dienstag           MO
   10001   Sue's Bridle Shop     Saltillo           MS
     111   Ames Wholesale        Tupelo             MS
   40004   Grayson Paul          Little City        ND
     345   Gretta's Gifts        Saddle Brook       NJ
      44   Ben Dover             Jaxon Whole        NV
     777   Pretty Boy's Gym      Lost Angeles       NY
       1   Xolomon Solutions     Tulsa              OK
   20002   Bank of Steele        Medina             PA

This works under V5R2, but I can't vouch for earlier releases.

--Ted

Sponsored By
COMMON

COMMON Fall 2004
IT Education Conference & Expo
Toronto, Ontario
October 17-21, 2004

Register Now!

World-class education on iSeries issues, with a special educational focus on Enterprise Application Modernization.

What is COMMON? It's the largest users group of IBM and IBM-compatible IT professionals, and it holds two education conferences per year.

Whether you're a COMMON Conference veteran or you've never been to one, attend COMMON in Toronto. You'll be one of hundreds of IT users who empowers their future by attending top education sessions, hands-on labs, workshops, forums, networking events and the industry's largest Expo. Explore the latest technologies in the Expo, network at COMMON socials, and get IBM to listen to you in the iSeries Nation Town Hall Meeting.


Technical Editors: Howard Arner, Joe Hertvik, Ted Holt,
Shannon O'Donnell, Kevin Vandever
Managing Editor: Shannon Pastore
Contributing Technical Editors: Joel Cochran, Wayne O. Evans, Raymond Everhart,
Bruce Guetzkow, Marc Logemann, David Morris
Publisher and Advertising Director: Jenny Thomas
Advertising Sales Representative: Kim Reed
Contact the Editors: To contact anyone on the IT Jungle Team
Go to our contacts page and send us a message.


THIS ISSUE
SPONSORED BY:

iTera
COMMON
WorksRight Software


BACK ISSUES

TABLE OF
CONTENTS
A Generic Command Choice Validity

Conditional Sorting with SQL

Admin Alert: Make User Profiles Go Cross-Partition with OpsNav


The Four Hundred
Big Blue Should Do Power Windows, Too

PeopleSoft Fires Conway, Brings Back Founder

Azul's Network-Attached Processing to Shake Up Server Market

Four Hundred Stuff
ASNA Launches Monarch for RPG-to-.NET Migration

Storm Weary Caribbean Considers High Availability Options

New Software from IIS Improves Document Workflow

Four Hundred Monitor


Copyright © 1996-2008 Guild Companies, Inc. All Rights Reserved.
Guild Companies, Inc. (formerly Midrange Server), 50 Park Terrace East, Suite 8F, New York, NY 10034
Privacy Statement