Подтвердить что ты не робот

ActiveRecord IS NOT NULL sql finder

Следующий искатель печатает IS NULL.

User.where(:id =>nil) #=> []
User Load (0.5ms)  SELECT `users`.* FROM `users` WHERE `users`.`id` IS NULL ORDER BY created_at DESC

Но я не мог найти, как распечатать IS NOT NULL один?

4b9b3361

Ответ 1

Простейшее, идиоматическое решение ActiveRecord:

User.where.not(id: nil)

Ответ 2

Попробуйте User.where("id IS NOT NULL")

Это должно выполнить вашу работу

Ответ 3

User.where.not(id: nil) будет работать для рельсов 4.

User.where("id IS NOT NULL") будет работать для более старых версий.

Ответ 4

Рельсы 4

вы можете попробовать это

User.where("id is not NULL")

Также, если вы хотите исключить определенный идентификатор и включить значения nil, следующие будут работать

User.where("id is NULL or id != 'excluded_id'")