Dear Josh, if you sort by AGE then the order will be young -> old or vice versa. I'd like to have the list sorted as interval birthDAY, birthMONTH and DAY from NOW() and MONTH from NOW().
example: 22.06.64 Person-1 26.06.50 Person-2 01.08.69 Person-3 02.08.71 Person-4 ... of course you could sort by DOY but then you'll have a problem w/ the next year: if it's let's say december and you select the list for the next 60 days, persons having birthday in december will appear after persons having birthday in january. I tried to use CASE WHEN... THEN in ORDER BY but it doesn't seem to work (syntax error at '') M. Josh Berkus wrote: > Michael, > > >>SELECT * >>FROM Persons >>WHERE EXTRACT( YEAR FROM AGE(dateofbirth) ) < EXTRACT( YEAR FROM AGE( >>CURRENT_DATE+60, dateofbirth ) ) >> >>... but how do I sort the list ? >> > > Easy: > > SELECT person_name, person_department, EXTRACT( YEAR FROM AGE(dateofbirth) ) > as their_age > FROM Persons > WHERE EXTRACT( YEAR FROM AGE(dateofbirth) ) < EXTRACT( YEAR FROM AGE( > CURRENT_DATE+60, dateofbirth ) ) > ORDER BY their_age, person_name > > As an example. > > > > > > ---------------------------(end of broadcast)--------------------------- TIP 5: Have you checked our extensive FAQ? http://www.postgresql.org/users-lounge/docs/faq.html