在模型上编写postgresql方法以按星期几获取日期时间条目

时间:2014-01-10 15:56:08

标签: ruby-on-rails postgresql sqlite

我的一个模型(team_opps)中有一个列,它是一个名为start_date的日期时间列。我最近将我的数据库从sqlite3迁移到postgresql,这搞砸了这个方法。

以下是在sqlite3中使用的方法:

  def self.monday_team_opps
    where('strftime("%w", "start_date") = "?"', 1)
  end

它给出的错误是:

PG::UndefinedColumn: ERROR:  column "%w" does not exist

意思是它不喜欢strftime。任何人都可以澄清需要调整什么才能使其在pgsql中工作吗?

谢谢!

2 个答案:

答案 0 :(得分:4)

试试这个

 def self.monday_team_opps
    where('EXTRACT(DOW FROM start_date) = ?', 1)
 end

答案 1 :(得分:0)

def self.monday_team_opps
  where("extract(day from start_date) = ?", 1)
end