我遇到了postgres语法问题。
我的代码如下:
output = Course.select("DISTINCT courses.*").where(:semester => Semester.current_semester(input[:semester])).where(:pending => pending)
output = Section.need_to_filter(input) ? output.joins(:sections) : output.joins("LEFT JOIN sections")
output = output.where(:category => input[:category]) if input[:category]
output = output.where('title ILIKE ?', "%#{input[:search_field]}%") if !input[:search_field].blank?
这是错误图片
它与连接有关,因为它停止了,但由于我在开发中有sqlite3,我不确定如何有效地测试它。
有人可以帮忙吗?
答案 0 :(得分:2)
您错过了ON
joins
声明
...
output = Section.need_to_filter(input) ? output.joins(:sections) : output.joins("LEFT JOIN sections ON sections.course_id = courses.id")
...