這是我的查詢看起來是這樣的:如何針對多個值對SQL列執行查詢?
Connection.where("invited_user_id = :user_a_id AND inviter_user_id = :user_b_id", user_a_id: self.inviter.try(:id), user_b_id: self.invited.try(:id)).exists?
我想什麼做的基本上是檢查invited_user_id
對多個選項,例如像invited_user_id = [:user1, :user2]
。但那不行。
如何檢查invited_user_id
列中的值是否在變量:user1
,:user2
或任何其他多個變量中。
這是可能的,而不使用明確的OR
方法是不太乾的?
您是否可以更新此查詢以在此查詢中使用:'Connection.where(「invited_user_id =:user_a_id AND inviter_user_id =:user_b_id」,user_a_id:self.inviter.try(:id),user_b_id:self.invited.try(: id))。exists?exists? – marcamillion
如你所建議的那樣,佔位符的條件與'?'的參數化相同。有關更多信息,請參閱http://guides.rubyonrails.org/active_record_querying.html#pure-string-conditions - 第2.2.1節。 – marcamillion