SELECT DISTINCTのfor SELECT DISTINCT, ORDER BY expressions must appear in select list したがって、注文する条項を明示的に選択する必要があります。
これが例です。これはあなたのケースに似ていますが、少し一般化してください。
Article.select('articles.*, RANDOM()')
.joins(:users)
.where(:column => 'whatever')
.order('Random()')
.uniq
.limit(15)
したがって、ORDER BYを明示的に含めてください 句(この場合はRANDOM() ).select()を使用する 。上記のように、クエリでArticle属性を返すには、それらも明示的に選択する必要があります。
これがお役に立てば幸いです。頑張ってください