У меня есть три таблицы:
Posts
Keywordings
Keywords
Соответствующие поля в паренах.
Сообщение
has_many :keywordings
has_many :keywords, :through => :keywordings
Ключевое слово (post_id, keyword_id)
belongs_to :post
belongs_to :keyword
Ключевое слово (имя)
has_many :keywordings
has_many :posts, :through => :keywordings
Я хочу найти все записи, в которых есть ключевые слова, которые соответствуют любому (по имени) из списка, упорядоченного по количеству найденных ключевых слов. Я убежден, что все это можно сделать в SQL, но я в растерянности.
Если мне нужно что-то делать в Ruby, хорошо, но желательно все в SQL. Это должно быть быстро.