You can do this in one of the two ways
SELECT Flda, MAX(Fldb) AS MaxFldb ;
FROM TableX GROUP BY Flda ;
INTO CURSOR crsMaxB
SELECT *;
FROM TableX ;
WHERE Flda + Fldb IN (SELECT Flda + MaxFldb FROM crsMaxB) ;
INTO CURSOR crsResult
SELECT *;
FROM TableX tx1 ;
WHERE Fldb IN (SELECT MAX(Fldb) FROM TableX tx2 ;
WHERE tx2.Flda = tx1.Flda ) ;
INTO CURSOR crsResult
>Plamen,
>On further investigation, it is not doing exactly as I want, if I do a select *. I want the Highest Flda RECORD returned
>
>Flda Fldb Fldc Fldd Flde etc
>A 100
>A 300
>A 150
>B 500
>B 800
>B 600
>
>If I Select SELECT *, MAX(Fldb) AS C FROM TempFile GROUP BY C, it returns
>
>Flda Fldb C
>A 150 300 Record no. 3 from File above
>B 600 800 Record no. 6 from File above
>
>What I want returned is:
>A 300 Record no. 2 above
>B 800 Record no. 5 above
>
>The file above is just a sample for illustration purposes. I am reaaly in terested in the other fields that are in the file, and I need the record whch has the highest FldB value returned , for any of the records grouped by Flda.
>
--sb--