У меня есть таблица около 100 пользователей, и у меня также есть массив идентификаторов пользователей. Я хотел бы показать всех пользователей, которые не являются частью этого массива идентификаторов пользователей. Когда я делаю что-то вроде этого
User.where('id NOT IN (?)', [9, 2, 3, 4])
Он успешно возвращает записи, в которых идентификатор пользователя не принадлежит этому массиву. Однако, если этот массив пуст, так
User.where('id NOT IN (?)', [])
Он не возвращает пользователей, и запрос SQL выглядит так:
SELECT "users".* FROM "users" WHERE (id NOT IN (NULL))
Кто-нибудь знает, почему это происходит, или это может быть ошибкой? Я использую Rails 3.2.5 с PostgreSQL.