Thread

  1. Order by birthdate

    Tim J Trowbridge <trowbrid@writeme.com> — 1998-06-11T02:39:44Z

    I'm trying to generate a birthday list ordered by month, then by day. 
    This is what I thought would work...
    
    SELECT name,birthdate FROM table WHERE birthdate is not null ORDER BY
    date_part('month',birthdate)
    
    but psql returns:
    
    ERROR:  parser: parse error at or near "("
    
    What's the problem?
    
    --
    Tim J Trowbridge                         trowbrid@writeme.com
    Interested in my genealogy?          http://www.execpc.com/~trowbrid
    
    
  2. Re: [SQL] Order by birthdate

    Marin D <marin@cybernet.bg> — 1998-06-11T07:49:35Z

    
    On Wed, 10 Jun 1998, Tim J Trowbridge wrote:
    
    > 
    > SELECT name,birthdate FROM table WHERE birthdate is not null ORDER BY
    > date_part('month',birthdate)
    > 
    > but psql returns:
    > 
    > ERROR:  parser: parse error at or near "("
    > 
    > What's the problem?
    > 
    
    Two problems here:
    
    1. The date_part() which u use in the order by clause is not in the target
    list
    
    2. Even if it was it wouldn't work as AFAIK functions are not allowed in
    the order by clause
    
    Try this:
    
     SELECT name,birthdate, date_part('month',birthdate) as birth_month
     FROM table 
     WHERE birthdate is not null 
     ORDER BY birth_month;
    
    
    Any better idea???
    
    	Marin
    
    
    	
              -= Why do we need gates in a world without fences? =-
    
    
    
    
  3. Re: [SQL] Order by birthdate

    jose' soares <sferac@bo.nettuno.it> — 1998-06-11T10:52:59Z

    On Wed, 10 Jun 1998, Tim J Trowbridge wrote:
    
    > I'm trying to generate a birthday list ordered by month, then by day. 
    > This is what I thought would work...
    > 
    > SELECT name,birthdate FROM table WHERE birthdate is not null ORDER BY
    > date_part('month',birthdate)
    
    I don't understand why you need specify month to sort tuples, you may order
    it by birthday, but if you want it anyway try this:
    
    SELECT name, EXTRACT(month FROM birthdate) AS mese
          FROM table WHERE birthdate is not null
          ORDER BY mese
    > 
    > but psql returns:
    > 
    > ERROR:  parser: parse error at or near "("
    > 
    > What's the problem?
    Seems that order by doesn't supports a function as parameter.
                                      Jose'