Als je het goed vindt om het meest voorkomende woord van alle rijen te krijgen (het meest voorkomende woord dat wordt gescheiden door een spatie), kun je het volgende gebruiken:
select word, count(distinct rn) as num_rows
from(
select unnest(string_to_array(col, ' ')) as word,
row_number() over(order by col) as rn
from tbl
) x
group by word
order by num_rows desc
Viool: http://sqlfiddle.com/#!15/bc803/9/0
Merk op dat dit het woord apple
vindt tussen 4 rijen, niet 5. Dit komt omdat APPLE123
is één woord, terwijl APPLE 123
zou twee woorden zijn, waarvan er één APPLE is, en zou tellen, maar dat doet het niet.