【发布时间】:2012-06-25 00:20:21
【问题描述】:
我在两个模型之间有关系,Registers 和 Competitions。我有一个非常复杂的动态查询正在构建中,如果条件合适,我需要将注册记录限制为仅竞争父级满足特定条件的那些。为了做到这一点而无需从竞争表中进行选择,我正在考虑类似...
Register.where("competition_id in ?", Competition.where("...").collect {|i| i.id})
产生这个 SQL:
SELECT "registers".* FROM "registers" WHERE (competition_id in 1,2,3,4...)
我认为 PostgreSQL 不喜欢 in 参数没有被括号包围的事实。如何将注册外键与竞赛 ID 列表进行比较?
【问题讨论】:
标签: ruby-on-rails arrays postgresql in-clause