SELECT * FROM mytable m1 > WHERE UniqueId IN > ( SELECT MIN(UniqueId) FROM mytable m2 WHERE m2.GroupField = m2.GroupField ) >Or
SELECT MIN(UniqueId) AS UniqueId, GroupField1, GroupField2 ; > FROM mytable > GROUP BY GroupField1, GroupField2 ; > INTO CURSOR crsMin > >SELECT * ; > FROM mytable > WHERE UniqueId + GroupField1 + GroupField2 IN ( ; > SELECT UniqueId + GroupField1 + GroupField2 FROM crsMin ) ; > INTO CURSOR crsResult >Yes, as I need additional fields and they should match the record that has been selected, I need to do that in two steps. Either such as you did or doing a small scan after to adjust some fields.