sql >> Databasteknik >  >> RDS >> Oracle

Oracle aggregatfunktion för att returnera ett slumpmässigt värde för en grupp?

Du kan prova något i stil med följande

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
/

Tanken är att sortera värdena inom gruppen i slumpmässig ordning och välja den första. Jag kan tänka mig andra sätt men inte så effektiva.



  1. Hur kan jag simulera en arrayvariabel i MySQL?

  2. Hur man kör flera MySQL-instanser på samma maskin

  3. SQL Sök och ersätt del av en sträng

  4. Konfiguration av MySQL 8