我正在寻找一种以特定顺序连接子查询的方法。
以下查询:
User.where(a: 3).where(#<Sequel::SQL::BooleanExpression @op=>:"NOT IN", @args=>[:b, [0.25, 0.31, 0.78]]>).or(b: nil)
像这样的小组:
(((a == 3) AND (b != [...]))
OR (b == nil))
然而,我想要实现的是
((a == 3)
AND ((b != [...]) OR (b == nil))
任何想法如何实现这一目标?
答案 0 :(得分:3)
您可能需要以下内容:
User.where(:a=>3).where(Sequel.~(:b=>[0.25, 0.31, 0.78]) | {:b=>nil})