ruby-on-rails - 相当于 Postgres 中的 strftime

标签 ruby-on-rails postgresql ruby-on-rails-4

将我的 SQLite 数据库迁移到开发服务器上的 Postgres 后,我得到了

PG::UndefinedFunction: ERROR:  function strftime(unknown, date) does not exist

是否有一个函数可以用来在我的应用程序中保留该功能?

编辑:尝试使用 to_char 但惨遭失败。特别是,我不明白如何在诸如

def self.query_by_year_month(y, m)
  where("strftime('%Y', date) = ? and strftime('%m', date) = ?", y, m)
end

谢谢!

最佳答案

看来现在是开始学习 SQL 的好时机!使用以下代码使我的方法起作用:

  def self.query_by_year_month(y, m)
    where("extract(year from date) = ? and extract(month from date) = ?", y, m)
  end

关于ruby-on-rails - 相当于 Postgres 中的 strftime,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20119978/

相关文章:

ruby-on-rails - Rails 如何区分这两个相同的表达式?

ruby-on-rails-4 - 使用 strong_params 在 Rails 4 Controller 中创建两个对象

python - Django/谷歌云 : FATAL: database <db> does not exist/Server Error 500

ruby-on-rails - 用符号打印哈希值内的值

ruby-on-rails-4 - #<RSpec::ExampleGroups::UserName:> 的未定义方法 `build'

ruby-on-rails - 使用 FactoryGirl 加速模型规范中的关联 - create vs build vs build_stubbed

ruby-on-rails - 如果我使用 begin...rescue,rails 会回滚吗?

ruby-on-rails - 单元测试 OpenID 服务器

sql - 从两个不同的选择语句中获取两行

PostgreSQL - 隐藏数据库结构但允许查询特定角色(用户)的选定 View