【发布时间】:2012-10-11 21:12:29
【问题描述】:
我刚刚编写了以下查询并得到了一个(对我来说)惊喜的结果;
Customer.where("satisfaction != ?","Very satisfied")
这返回的值比我预期的要少得多,原因是我的满意度列的数据库中存在空值。要获得我想要的记录,我必须编写以下查询
Customer.where("satisfaction != ? or satisfaction is null","Very satisfied")
这可行,但它很丑陋,我希望有更好的方法(特别是因为我计划动态生成这些查询,所以我希望它们尽可能简单)。是否存在将空值与不相等值合并的运算符?
我的数据库是开发中的 SQLite3 和生产中的 Postgresql。
【问题讨论】:
-
哪个环境产生了令人惊讶的结果?
-
SQLite3 产生了令人惊讶的结果
-
任何数据库甚至会假装对标准进行口头上的服务。
标签: sql ruby-on-rails sqlite postgresql