2

次のような一連の電子メールが与えられます:

emails = "atttt@bbb-inc.com, scott@sara.com, a@a.com, rasx@bo.com"

1つのクエリで、一致するすべてのユーザーレコードを返します。

User.rb (id,email)

これが私のクエリですが、電子メールが複数の電子メールに設定されている場合、結果は返されません。

User.where("email IN (?)", emails)
  User Load (1.0ms)  SELECT "users".* FROM "users" WHERE (users.deleted_at IS NULL) AND (email IN ('atttt@bbb-inc.com,, scott@sara.com, a@a.com, rasx@bo.com'))
 => [] 

このUser.whereクエリを更新して、提供された電子メールから一致するすべてのユーザーを取得する方法に関する提案はありますか?ありがとうございました。

4

1 に答える 1

0

まず、 をemails配列に変換します。

emails = "atttt@bbb-inc.com, scott@sara.com, a@a.com, rasx@bo.com".split(', ')

次に、次のように呼び出すことができます。

User.where(:email => emails)
于 2012-09-27T23:31:40.937 に答える