Det "mest förekommande värdet" i en distribution är ett distinkt begrepp inom statistik, med ett tekniskt namn. Det kallas för distributionens MODE. Och Oracle har STATS_MODE()
funktion för det. https://docs.oracle.com/cd/B19306_01 /server.102/b14200/functions154.htm
Till exempel genom att använda EMP
tabell i standarden SCOTT
schema, select stats_mode(deptno) from scott.emp
returnerar 30
- Antalet avdelningar med flest anställda. (30 är avdelningens "namn" eller nummer, det är INTE antalet anställda på den avdelningen!)
I ditt fall:
select stats_mode(h.name) from (the rest of your query)
Obs :om två eller flera hotell är kopplade till "mest frekvent", då STATS_MODE()
kommer att returnera en av dem (icke-deterministisk). Om du behöver alla bundna värden behöver du en annan lösning - ett bra exempel finns i dokumentationen (länkad ovan). Detta är en dokumenterad brist i Oracles förståelse och implementering av det statistiska konceptet.