Usa MAX() o MIN(), non FIRST(). In questo scenario, avrai tutti i NULL nella colonna per ogni valore di gruppo eccetto, al massimo, uno con un valore non nullo. Per definizione, questo è sia il MIN che il MAX di quell'insieme di valori (tutti i null sono esclusi).