我正在尝试这个,不确定我是否正确这样做:
User.where("region_id => ?", region_ids).order("id ASC")
region_ids = [1234,234322,234324,2343,....]
此外,如果region_ids为空(非空,但为空)
,这是否有效我看到了一个错误:
check the manual that corresponds to your MySQL server version for the right syntax to use near '=> NULL) ORDER BY id ASC' at line 1:
当我处于调试器模式时,我输出region_ids,它是[]。
答案 0 :(得分:2)
你在字符串中混合了Ruby和SQL语法。您想要的更像("region_id in (?)", region_ids)
或({ "region_id" => region_ids })
。
答案 1 :(得分:0)
您需要反转两行的顺序,应在User.where之前设置region_ids 因为它现在的方式当你调用where()时,region_ids是NULL。