Ruby Rails Active Record Query在两列上

sno*_*ard 3 ruby sql ruby-on-rails

假设我们有下表:
员工
ID姓名Sick_Leaves Casual_Leaves
1 John 4 8
2 Nancy 5 2
3 Matthew 2 9

现在,如果我想获得所有雇用了更多生病叶片而不是随意的雇员的列表,那么它直接在SQL中:
选择*来自员工Where Sick_Leaves> Casual_Leave

现在考虑到我为Employee定义了一个Rails Active Record Model类,如何使用模型类本身执行相同的查询?我陷入了如何定义WHERE子句的困境.如果它已经是Sick_Leaves> 5(或某个固定数字),那么它很简单,但现在我们想要比较两列本身呢?

任何帮助将不胜感激.

Joe*_*edy 5

您可以使用以下ActiveRecord查询:

Employee.where('sick_leaves > casual_leaves')
Run Code Online (Sandbox Code Playgroud)