MySQLでキーワードの出現回数順に並び替える方法

MySQLの文字列フィールドに格納された文章の中にキーワードが何回出現するかを調べ、その出現回数順に並び替えてレコードを取得する方法です。

MySQLにはキーワードの出現回数を求めるような機能は用意されていないので、少し工夫が必要になります。

その方法としては、「元データの文字数」から「キーワードを削除(空白に置換)した後の文字数」を引いて、それを「キーワードの文字数」で割る「出現回数」が求められます。

出現回数順に並び替えるためのSQLは下記のような感じです。

以上、参考になれば幸いです。