select distinct on( goodid) * from table order by goodid, storehistoryid desc, totalnum, operationdate;
> aicean wrote: > > How can I produce the following desired result? > > goodid totalnum operationdate storehistoryid > 132 35.000 09-28-2003 66 > 135 11.500 09-28-2003 61 > 132 35.000 09-27-2003 60 > 135 11.000 09-28-2003 59 > 135 12.000 09-28-2003 58 > 134 100.000 09-28-2003 57 > 134 112.000 09-27-2003 56 > 131 0.000 09-26-2003 54 > 131 33.000 09-26-2003 51 > 131 -2.000 09-26-2003 50 > 3 550.000 09-26-2003 49 > 3 52.000 09-26-2003 48 > 132 35.000 09-27-2003 42 > 3 124.000 09-25-2003 41 > 131 59.000 09-25-2003 40 > 132 57.000 09-26-2003 39 > 131 2.000 09-24-2003 38 > 3 2.000 09-20-2003 23 > > result: > goodid totalnum operationdate storehistoryid > 132 35.000 09-28-2003 66 > 135 11.500 09-28-2003 61 > 134 100.000 09-28-2003 57 > 131 0.000 09-26-2003 54 > 3 550.000 09-26-2003 49 > > I need to select rows which storehistoryid is max as the same > goodid . > > > Thanks in advance > > > aicean > Mailto:[EMAIL PROTECTED] ---------------------------(end of broadcast)--------------------------- TIP 4: Don't 'kill -9' the postmaster