>Frankly, I'd accept first or last, if only it was sure to behave the same each time. > >This was always a gray area, but then for the cases where you wanted one of the values for that field (and didn't really care which), this was a nice loophole.
If you don't care what values are in those fields, you can wrap them into MIN() or MAX() function to make query valid.
>Of course, having an aggregate function ValueOfAWhenMaxB(fieldA, FieldB), which would return the value of FieldA from the record where FieldB=max(FieldB) would be even better. That would help in all the cases when we need to know the date when temperature was lowest, or the customer who bought most of a certain item... but then, we can always roll our own for such cases.