Aangezien de fout for SELECT DISTINCT, ORDER BY expressions must appear in select list
.Daarom moet u expliciet de clausule selecteren waarvoor u bestelt.
Hier is een voorbeeld, het lijkt op jouw geval, maar generaliseer een beetje.
Article.select('articles.*, RANDOM()')
.joins(:users)
.where(:column => 'whatever')
.order('Random()')
.uniq
.limit(15)
Vermeld dus expliciet uw ORDER BY
clausule (in dit geval RANDOM()
) met behulp van .select()
. Zoals hierboven weergegeven, moet u deze expliciet ook selecteren om ervoor te zorgen dat uw zoekopdracht de artikelkenmerken retourneert.
Ik hoop dat dit helpt; veel succes