Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie finde ich die beliebtesten Wortvorkommen in MySQL?

Sie können Wörter mit etwas String-Manipulation extrahieren. Angenommen, Sie haben eine Zahlentabelle und Wörter werden durch einzelne Leerzeichen getrennt:

select substring_index(substring_index(r.title, ' ', n.n), ' ', -1) as word,
       count(*)
from results r join
     numbers n
     on n.n <= length(title) - length(replace(title, ' ', '')) + 1
group by word;

Wenn Sie keine Zahlentabelle haben, können Sie mithilfe einer Unterabfrage manuell eine erstellen:

from results r join
     (select 1 as n union all select 2 union all select 3 union all . . .
     ) n
     . . .

Die SQL-Geige (mit freundlicher Genehmigung von @GrzegorzAdamKowalski) ist hier .