Bạn có thể thử một cái gì đó như sau
select deptno,max(sal),min(sal),max(rand_sal)
from(
select deptno,sal,first_value(sal)
over(partition by deptno order by dbms_random.value) rand_sal
from emp)
group by deptno
/
Ý tưởng là sắp xếp các giá trị trong nhóm theo thứ tự ngẫu nhiên và chọn cái đầu tiên. Tôi có thể nghĩ ra nhiều cách khác nhưng không có cách nào hiệu quả.