On Friday, April 01, 2005 19:27, Chris wrote: > Hi all, > > I've got 3 or 4 queries UNIONed together in a single query. I want to > GROUP the UNIONed result, by one field, and SUM() another field. > > Is that possible in one query, or will I need to use temporary table > and group it from that? > > Thanks, > > Chris
I don't think you can tacka group by directly on the end of a union. Try something like this: select groupcol, sum(sumcol) from (select col1 as groupcol, col2 as sumcol from table1 UNION select col1 as groupcol, col2 as sumcol from table2) as tmptable group by groupcol; Obviously you can add in your where clause. This is messy but it should work. This is basically using a temp table without 2-stepping it. If you look at the explain it will say using temporary. -- Tom Crimmins Interface Specialist Pottawattamie County, Iowa -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]