Ale*_*lex 0 sql activerecord ruby-on-rails map
假设我们有3个用户 [User name="A"], [User name="B"], [User name="C"]
(检查在线状态)之间是否存在差异:
if User.where(name: "A").first
和
User.all.map(&:name).include? "A"
Run Code Online (Sandbox Code Playgroud)
谢谢.
where
仅使用通过SQL检索与名称匹配的用户.
映射加载所有用户,构建其名称数组,并检查"A".
对于少量用户的差异表现将是微不足道的,但两者的内存和时间会在一定点后大幅影响,并where
会多好.在数据库中完成工作将比天真地检索所有数据并在Ruby中执行更好.