【发布时间】:2015-06-27 05:34:29
【问题描述】:
我正在创建一个涉及多个连接的查询,这会导致一些重复
@users = User.joins(...).where(...).select("users.id")
根据该结果,我想记录distinct 和RANDOM() 顺序
我似乎无法用 activerecord 重新创建它。
使用 SQL 它看起来像
SELECT DISTINCT users.*
from ( long complex query)
ORDER BY RANDOM()
【问题讨论】:
-
我并没有抓住所有用户,并且我在之后限制了查询。洗牌会非常慢。我想要的只是通过带有 setseed 的 RANDOM() 进行排序,但是我要么得到重复,要么得到一个错误,说如果我不选择随机列,我就不能随机排序。选择 random() 列使该行不明显...
-
是的,但这需要我选择 RANDOM() 列按它排序,这会使其不明显
标签: sql ruby-on-rails postgresql ruby-on-rails-4 activerecord