【发布时间】:2020-01-10 00:41:18
【问题描述】:
我有一个查询,它有一个执行计算的子查询。这是子查询的一部分:
SUM(
CASE
WHEN s.partially_met = false AND s.fully_met = true
THEN 1 ELSE 0
END
)::float * 100.0 / COUNT(s.outcome_id)::float as fully_met_percent
当我在开发或测试中运行整个查询时,它总是返回正确的结果。 当我运行生成上述内容的 rails 活动记录查询时,它总是在开发和测试中返回正确的结果。
当我直接对我的 heroku 暂存数据库运行 SQL 时,它会生成正确的结果。
但是,在我的 heroku 登台应用程序上,活动记录查询将始终返回 0.0。
如果我使用 ActiveRecord::Base.connection.execute 通过 rails 控制台为我的 heroku 登台应用程序运行 SQL,它将始终返回 0.0
任何人都可以解释为什么会发生这种情况或有什么想法可以看吗?
Rails 6.0.0 应用,Ruby 2.6.1
非常感谢,
【问题讨论】:
标签: ruby-on-rails postgresql heroku ruby-on-rails-6