? OR expired_at-6ren">
gpt4 book ai didi

sql - Rails 中同一列的 OR 条件在哪里

转载 作者:行者123 更新时间:2023-12-03 15:54:26 24 4
gpt4 key购买 nike

我正在尝试检索具有 expired_at 的所有记录为零和 expired_at大于当前时间。
我试过这个:

PriceRule.where("expired_at > ? OR expired_at = ?", DateTime.now, nil)
但这只是返回给我的记录 expired_at大于 DateTime.now .为什么是 nil被忽视?

最佳答案

您还可以利用 Rails or 在这里,它将处理 IS NULL而不是 = NULL .我还建议使用 Time.current 相反,它对时区有更好的支持。

PriceRule
.where('expired_at > ?', Time.current)
.or(PriceRule.where(expired_at: nil))

关于sql - Rails 中同一列的 OR 条件在哪里,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63197704/

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