gpt4 book ai didi

ruby-on-rails - 不包含零的事件记录

转载 作者:行者123 更新时间:2023-12-04 06:24:58 26 4
gpt4 key购买 nike

这个问题建立在
active record where method and not
Item.where("color != ?", 'red').where.not 的类似物不返回 nil 值。我如何查询以包括这些?

最佳答案

根本问题是 SQL 数据库如何与 NULL 进行比较,而不是 Rails 或 ActiveRecord 如何工作。如果您想要颜色为 NULL 的记录,则必须使用 where color IS NULL 之类的内容显式包含它们。 NULL 不被视为“非红色”。最终,为了得到你想要的,你需要在 SQL 中使用 or 来涵盖这两种情况。

在 ActiveRecord 中,您需要这样:

Item.where("color != ? or color is null", 'red')

你也可以这样做:
Item.where("color != ?", 'red').or(Item.where(color: nil))

关于ruby-on-rails - 不包含零的事件记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49821639/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com