getting error, Mysql2::Error: You have an error in your SQL syntax in rails?

getting error, Mysql2::Error: You have an error in your SQL syntax in rails?

下面的查询需要更改什么?。我想要 date_of_leaving 为空或 date_of_leaving 在过去 60 天之间或 date_of_leaving 大于或等于 Date.today 或当前日期的所有员工。

employees = @company.employees.where('date_of_leaving BETWEEN ? AND ? OR date_of_leaving IS NULL OR date_of_leaving IS >= Date.today', Date.today - 60, Date.today)

我尝试了另一种方式,如下所示。

employees = Company.find(4).employees.where('date_of_leaving BETWEEN ? AND ? OR date_of_leaving IS NULL OR date_of_leaving IS >= ?', Date.today - 60, Date.today,Date.today)

我认为你的问题是短语 IS >= .

您不应将 is 与比较运算符一起使用。只是运营商。把它拿出来,否则看起来不错。