Actually, that should not work, it should give you an error. This should work: SELECT `fkid`,max(`foo`) as foo,`bar` FROM `test2` GROUP BY `fkid` ORDER BY `bar` ASC Miguel Guirao wrote: > select max(bar) from mytable where unique fkid order by bar asc > > as far as I remember!! > > -----Original Message----- > From: Peter Beckman [mailto:beckman@xxxxxxxxxxxxx] > Sent: Lunes, 13 de Noviembre de 2006 04:59 p.m. > To: PHP-DB Mailing List > Subject: MySQL SQL Query Help > > > I have a table: > > id fkid foo bar > 1 1 345 yellow > 2 1 34 red > 3 2 3459 green > 4 2 345 brown > > I want to select the largest value of "foo" for a unique fkid, and return > bar, the results ordered by bar. In this case, 345 is the largest value of > foo for fkid 1, and 3459 is the largest for fkid 2. "green" comes before > "yellow." My desired result set would be: > > fkid foo bar > 2 3459 green > 1 345 yellow > > How would I write that in SQL? fkid and foo are ints, bar is a varchar. > > Beckman > --------------------------------------------------------------------------- > Peter Beckman Internet Guy > beckman@xxxxxxxxxxxxx http://www.purplecow.com/ > --------------------------------------------------------------------------- > > -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php