Как совместить два условия в предложении where?
У меня есть следующее:
time_range = (1.month.ago.beginning_of_month..1.month.ago.end_of_month)
Comment.where(:created_at => time_range).count
Как я могу добавить к предложению where оператор:
.where("user_id is not in (?)",[user_ids]).
Как я могу объединить эти два? Благодаря
Ответы
Ответ 1
если вы хотите "И" условный запрос, попробуйте следующее:
Comment.
where(:created_at => time_range).
where("user_id is not in (?)",[user_ids])
который будет генерировать SQL как: select ... where ... AND ...
если вы хотите, чтобы предложение WEHRE было более сложным, например: where ( a AND b) OR (c AND d)
, вы должны сами объединить условия в предложение, например.
Comment.where("(a AND b ) OR (c AND d)")
Ответ 2
User.where(["name = ? and email = ?", "Joe", "[email protected]"])
Это будет нормально.
Ответ 3
User.where(name: 'Joe', email: '[email protected]')