下面的Rails代码导致一个查询在6多行查询更新与在轨
people = { 1 => { "name" => "David" }, 2 => { "name" => "Jeremy" }, 3 => { "name" => "Tom" } }
Person.update(people.keys, people.values)
它会做每更新的行两个查询。一个选择和一个更新。
有没有办法在只有一个查询(或只有两个查询)的Rails 4中执行相同的任务?
有一些信息就如何做到这一点在MySQL,而不是Rails的: Multiple Updates in MySQL
感谢。
简短的回答是没有。因为每个事务都必须是关系数据库中的原子和孤立的。 –