Try this: select key_col, min(name), max(date_col) from my_table group by key_col ;
You could use max(name) instead of min(name) also, although since the names can be misspelled, I don't see why it would matter which name is displayed. s.s. On Wed, 30 Jan 2002 21:36:04 +0200, you wrote: >Hi >I need help with an sql string: > >have a table similar to this: > >id key name date >1 123 name1 date1 >2 123 name1 date2 >3 111 name2 date1 >4 111 name2 date2 >5 123 name1 date3 >Now, I need sql to report the following result: > >name1 date3 >name2 date2 > > >thus, report all the names in the table but only the ones with the >latest date. > >The sql MUST use the key to compare the different rows with each other >and NOT the name, as the name is prone to spelling errors (ok, the key >as well, but it's easier to make a typo with letters than with digits >and I already have a couple of entries where the names of the entries >are different. > > --------------------------------------------------------------------- Before posting, please check: http://www.mysql.com/manual.php (the manual) http://lists.mysql.com/ (the list archive) To request this thread, e-mail <[EMAIL PROTECTED]> To unsubscribe, e-mail <[EMAIL PROTECTED]> Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php