1

これが非常に単純なクエリです。

フィールド=:has_bill
値=nil
scoped.where(field => value)

そしてそれは次のように出力します:

(`electricity_profile_segment_summaries`.`has_swimming_pool` IN('')または`electricity_profile_segment_summaries`.`has_swimming_pool`はNULLです)

これには、nil値と0値も含まれます。NULLこれは正しくありませんが、表の値のみを表したいと思います。

助けていただければ幸いです

4

1 に答える 1

1

ケースを手動で制限するNULLのはどうですか?nil

if value.nil?
  scoped.where( "#{field} IS NULL" )
else
  scoped.where( field => value
end
于 2012-12-03T04:55:34.707 に答える