NULL AND exam <> -6ren">
gpt4 book ai didi

mysql - Rails 3. 在 SQL 中检查真值

转载 作者:太空宇宙 更新时间:2023-11-03 17:58:36 25 4
gpt4 key购买 nike

我需要检查 exam 列的值是否为 true。所以我设置了它,但它不起作用...

@exam_shipments = Shipment.where("exam <> NULL AND exam <> 0 AND customer_id = ?", current_admin_user.customer_id)

# This one gives me error "SQLite3::SQLException: no such column: true:"
@exam_shipments = Shipment.where("exam = true AND customer_id = ?", current_admin_user.customer_id)

@exam_shipments = Shipment.where("exam = 1 AND customer_id = ?", current_admin_user.customer_id)

最佳答案

你真的应该坚持使用 AR 语法:

@exam_shipments = Shipment.where(:exam => true, :customer_id => current_admin_user.customer_id)

假设 :exam 是您的 Shipment 模型中的 bool 字段。 ActiveRecord 负责将您的查询转换为给定数据库的正确语法。因此,您编写的内联 SQL 越少,您的代码就越能与数据库无关并可移植。

关于mysql - Rails 3. 在 SQL 中检查真值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9022463/

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