> -----Original Message-----
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] Behalf Of Chris Green
> Sent: Thursday, December 02, 2004 9:56 AM
> To: [EMAIL PROTECTED]
> Subject: [GENERAL] UNION with ORDER BY -allowed?
> 
> 
> It's not quite clear (to me at least) whether I can have a UNION and
> an ORDER BY in a SELECT statement.
> 
> What I want to do is:-
> 
>     SELECT
>         col1, col2, col5, col6
>     FROM
>         table
>     WHERE
>         col2 = 'X'
>     UNION
>     SELECT
>         col3, col4, col5, col6
>     FROM
>         table
>     WHERE
>         col4 = 'X'
>     ORDER BY
>         coalesce(col1, col3)
> 
> Is this valid syntax allowed by postgresql?  (I'm not at the system
> where postgresql is installed at the moment so I can't just try it)
Yes, provided the columns are the same data types (or you can cast them to make 
them the same)

> 
> col1 and col3 are both DATE columns.  col2 and col4 are both
> varchar(1).
> 
> I want the ORDER BY to order the result of the UNION.

It does, per SQL spec.  Nothing less would make sense if you ask me.  :)



Terry Fielder
Manager Software Development and Deployment
Great Gulf Homes / Ashton Woods Homes
[EMAIL PROTECTED] 
Fax: (416) 441-9085


> 
> -- 
> Chris Green ([EMAIL PROTECTED])
> 
>     "Never ascribe to malice, that which can be explained by 
> incompetence."
> 
> ---------------------------(end of 
> broadcast)---------------------------
> TIP 4: Don't 'kill -9' the postmaster
> 

---------------------------(end of broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]

Reply via email to